From f87d5a6fc0a2870d21622c10c3d100d423f4e0ab Mon Sep 17 00:00:00 2001 From: Jeremy Long Date: Wed, 7 Aug 2013 22:09:06 -0400 Subject: [PATCH] initial release --- css/apache-maven-fluido-1.3.0.min.css | 9 + css/print.css | 23 + css/site.css | 1 + .../apidocs/allclasses-frame.html | 34 + .../apidocs/allclasses-noframe.html | 34 + .../apidocs/constant-values.html | 145 + .../apidocs/deprecated-list.html | 145 + dependency-check-ant/apidocs/help-doc.html | 216 + dependency-check-ant/apidocs/index-all.html | 253 + dependency-check-ant/apidocs/index.html | 37 + .../DependencyCheckTask.ReportFormats.html | 293 ++ .../taskdefs/DependencyCheckTask.html | 790 +++ .../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 + dependency-check-ant/apidocs/package-list | 1 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes dependency-check-ant/apidocs/stylesheet.css | 29 + dependency-check-ant/checkstyle.html | 278 + dependency-check-ant/checkstyle.rss | 289 + dependency-check-ant/cobertura/css/help.css | 22 + dependency-check-ant/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 + 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 dependency-check-ant/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + dependency-check-ant/cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + ...ncycheck.taskdefs.DependencyCheckTask.html | 930 ++++ dependency-check-ant/configuration.html | 279 + dependency-check-ant/cpd.html | 258 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + dependency-check-ant/css/print.css | 23 + dependency-check-ant/css/site.css | 1 + .../dependency-updates-report.html | 459 ++ dependency-check-ant/findbugs.html | 295 ++ .../images/accessories-text-editor.png | Bin 0 -> 746 bytes 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 dependency-check-ant/images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes dependency-check-ant/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes dependency-check-ant/images/icon_help_sml.gif | Bin 0 -> 1072 bytes dependency-check-ant/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 dependency-check-ant/images/remove.gif | Bin 0 -> 607 bytes dependency-check-ant/images/rss.png | Bin 0 -> 474 bytes dependency-check-ant/images/update.gif | Bin 0 -> 1090 bytes dependency-check-ant/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 dependency-check-ant/index.html | 192 + dependency-check-ant/installation.html | 170 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + dependency-check-ant/license.html | 871 +++ .../plugin-updates-report.html | 869 +++ dependency-check-ant/pmd.html | 257 + dependency-check-ant/project-info.html | 207 + dependency-check-ant/project-reports.html | 297 ++ dependency-check-ant/project-summary.html | 239 + dependency-check-ant/surefire-report.html | 354 ++ dependency-check-ant/taglist.html | 275 + dependency-check-ant/usage.html | 188 + .../xref-test/allclasses-frame.html | 20 + dependency-check-ant/xref-test/index.html | 24 + .../taskdefs/DependencyCheckTaskTest.html | 135 + .../taskdefs/package-frame.html | 24 + .../taskdefs/package-summary.html | 67 + .../xref-test/overview-frame.html | 25 + .../xref-test/overview-summary.html | 64 + dependency-check-ant/xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 23 + dependency-check-ant/xref/index.html | 24 + .../taskdefs/DependencyCheckTask.html | 539 ++ .../taskdefs/package-frame.html | 27 + .../taskdefs/package-summary.html | 72 + dependency-check-ant/xref/overview-frame.html | 25 + .../xref/overview-summary.html | 64 + dependency-check-ant/xref/stylesheet.css | 116 + .../apidocs/allclasses-frame.html | 36 + .../apidocs/allclasses-noframe.html | 36 + .../apidocs/constant-values.html | 313 ++ .../apidocs/deprecated-list.html | 147 + dependency-check-cli/apidocs/help-doc.html | 224 + dependency-check-cli/apidocs/index-all.html | 354 ++ dependency-check-cli/apidocs/index.html | 40 + .../org/owasp/dependencycheck/App.html | 284 + .../owasp/dependencycheck/class-use/App.html | 145 + .../cli/CliParser.ArgumentName.html | 751 +++ .../owasp/dependencycheck/cli/CliParser.html | 601 +++ .../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 + dependency-check-cli/apidocs/package-list | 2 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes dependency-check-cli/apidocs/stylesheet.css | 29 + dependency-check-cli/checkstyle.html | 280 + dependency-check-cli/checkstyle.rss | 233 + dependency-check-cli/cobertura/css/help.css | 22 + dependency-check-cli/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 + 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 dependency-check-cli/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + dependency-check-cli/cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + .../org.owasp.dependencycheck.App.html | 349 ++ ...g.owasp.dependencycheck.cli.CliParser.html | 892 ++++ dependency-check-cli/cpd.html | 244 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + dependency-check-cli/css/print.css | 23 + dependency-check-cli/css/site.css | 1 + .../dependency-updates-report.html | 403 ++ dependency-check-cli/findbugs.html | 263 + .../images/accessories-text-editor.png | Bin 0 -> 746 bytes 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 dependency-check-cli/images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes dependency-check-cli/images/fix.gif | Bin 0 -> 366 bytes .../images/icon_error_sml.gif | Bin 0 -> 633 bytes dependency-check-cli/images/icon_help_sml.gif | Bin 0 -> 1072 bytes dependency-check-cli/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 dependency-check-cli/images/remove.gif | Bin 0 -> 607 bytes dependency-check-cli/images/rss.png | Bin 0 -> 474 bytes dependency-check-cli/images/update.gif | Bin 0 -> 1090 bytes dependency-check-cli/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 dependency-check-cli/index.html | 178 + dependency-check-cli/installation.html | 172 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + dependency-check-cli/license.html | 857 +++ .../plugin-updates-report.html | 858 +++ dependency-check-cli/pmd.html | 261 + dependency-check-cli/project-info.html | 193 + dependency-check-cli/project-reports.html | 283 + dependency-check-cli/project-summary.html | 225 + dependency-check-cli/surefire-report.html | 360 ++ dependency-check-cli/taglist.html | 251 + .../xref-test/allclasses-frame.html | 20 + 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 + dependency-check-cli/xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 26 + dependency-check-cli/xref/index.html | 24 + .../xref/org/owasp/dependencycheck/App.html | 212 + .../owasp/dependencycheck/cli/CliParser.html | 487 ++ .../dependencycheck/cli/package-frame.html | 27 + .../dependencycheck/cli/package-summary.html | 72 + .../owasp/dependencycheck/package-frame.html | 24 + .../dependencycheck/package-summary.html | 67 + dependency-check-cli/xref/overview-frame.html | 28 + .../xref/overview-summary.html | 69 + dependency-check-cli/xref/stylesheet.css | 116 + .../apidocs/allclasses-frame.html | 342 ++ .../apidocs/allclasses-noframe.html | 342 ++ .../apidocs/constant-values.html | 595 +++ .../apidocs/deprecated-list.html | 211 + dependency-check-core/apidocs/help-doc.html | 224 + dependency-check-core/apidocs/index-all.html | 4680 +++++++++++++++++ dependency-check-core/apidocs/index.html | 40 + .../org/owasp/dependencycheck/Engine.html | 576 ++ .../analyzer/AbstractAnalyzer.html | 337 ++ .../analyzer/AnalysisException.html | 305 ++ .../analyzer/AnalysisPhase.html | 461 ++ .../dependencycheck/analyzer/Analyzer.html | 382 ++ .../analyzer/AnalyzerService.html | 249 + .../analyzer/ArchiveAnalyzer.html | 454 ++ .../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/class-use/AbstractAnalyzer.html | 245 + .../analyzer/class-use/AnalysisException.html | 336 ++ .../analyzer/class-use/AnalysisPhase.html | 362 ++ .../analyzer/class-use/Analyzer.html | 415 ++ .../analyzer/class-use/AnalyzerService.html | 187 + .../analyzer/class-use/ArchiveAnalyzer.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/package-frame.html | 84 + .../analyzer/package-summary.html | 275 + .../analyzer/package-tree.html | 183 + .../dependencycheck/analyzer/package-use.html | 333 ++ .../dependencycheck/class-use/Engine.html | 327 ++ .../data/CachedWebDataSource.html | 229 + .../dependencycheck/data/UpdateException.html | 306 ++ .../dependencycheck/data/UpdateService.html | 251 + .../data/class-use/CachedWebDataSource.html | 220 + .../data/class-use/UpdateException.html | 230 + .../data/class-use/UpdateService.html | 186 + .../dependencycheck/data/cpe/CPEAnalyzer.html | 631 +++ .../dependencycheck/data/cpe/Fields.html | 312 ++ .../owasp/dependencycheck/data/cpe/Index.html | 454 ++ .../dependencycheck/data/cpe/IndexEntry.html | 550 ++ .../data/cpe/class-use/CPEAnalyzer.html | 145 + .../data/cpe/class-use/Fields.html | 145 + .../data/cpe/class-use/Index.html | 145 + .../data/cpe/class-use/IndexEntry.html | 248 + .../data/cpe/package-frame.html | 39 + .../data/cpe/package-summary.html | 199 + .../data/cpe/package-tree.html | 158 + .../dependencycheck/data/cpe/package-use.html | 200 + .../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/AbstractIndex.html | 705 +++ .../data/lucene/AbstractTokenizingFilter.html | 386 ++ .../data/lucene/AlphaNumericTokenizer.html | 367 ++ .../data/lucene/DependencySimilarity.html | 329 ++ .../data/lucene/FieldAnalyzer.html | 307 ++ .../data/lucene/LuceneUtils.html | 259 + .../data/lucene/SearchFieldAnalyzer.html | 330 ++ .../data/lucene/SearchVersionAnalyzer.html | 309 ++ .../lucene/TokenPairConcatenatingFilter.html | 367 ++ .../data/lucene/UrlTokenizingFilter.html | 352 ++ .../data/lucene/VersionAnalyzer.html | 308 ++ .../data/lucene/VersionTokenizingFilter.html | 355 ++ .../data/lucene/class-use/AbstractIndex.html | 186 + .../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 | 55 + .../data/lucene/package-summary.html | 235 + .../data/lucene/package-tree.html | 176 + .../data/lucene/package-use.html | 201 + .../dependencycheck/data/nvdcve/CveDB.html | 883 ++++ .../data/nvdcve/DatabaseException.html | 271 + .../data/nvdcve/NvdCveAnalyzer.html | 516 ++ .../data/nvdcve/class-use/CveDB.html | 185 + .../nvdcve/class-use/DatabaseException.html | 285 + .../data/nvdcve/class-use/NvdCveAnalyzer.html | 145 + .../data/nvdcve/package-frame.html | 46 + .../data/nvdcve/package-summary.html | 204 + .../data/nvdcve/package-tree.html | 160 + .../data/nvdcve/package-use.html | 229 + .../nvdcve/xml/DatabaseUpdater.NvdCveUrl.html | 459 ++ .../data/nvdcve/xml/DatabaseUpdater.html | 402 ++ .../data/nvdcve/xml/InvalidDataException.html | 272 + .../nvdcve/xml/NvdCve12Handler.Element.html | 515 ++ .../data/nvdcve/xml/NvdCve12Handler.html | 359 ++ .../nvdcve/xml/NvdCve20Handler.Element.html | 935 ++++ .../data/nvdcve/xml/NvdCve20Handler.html | 480 ++ .../class-use/DatabaseUpdater.NvdCveUrl.html | 193 + .../nvdcve/xml/class-use/DatabaseUpdater.html | 145 + .../xml/class-use/InvalidDataException.html | 185 + .../class-use/NvdCve12Handler.Element.html | 145 + .../nvdcve/xml/class-use/NvdCve12Handler.html | 145 + .../class-use/NvdCve20Handler.Element.html | 145 + .../nvdcve/xml/class-use/NvdCve20Handler.html | 145 + .../data/nvdcve/xml/package-frame.html | 54 + .../data/nvdcve/xml/package-summary.html | 228 + .../data/nvdcve/xml/package-tree.html | 163 + .../data/nvdcve/xml/package-use.html | 183 + .../dependencycheck/data/package-frame.html | 55 + .../dependencycheck/data/package-summary.html | 213 + .../dependencycheck/data/package-tree.html | 166 + .../dependencycheck/data/package-use.html | 217 + .../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 | 507 ++ .../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 | 318 ++ .../class-use/VulnerabilityComparator.html | 145 + .../class-use/VulnerableSoftware.html | 311 ++ .../dependency/package-frame.html | 58 + .../dependency/package-summary.html | 227 + .../dependency/package-tree.html | 175 + .../dependency/package-use.html | 380 ++ .../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 | 225 + .../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 + .../owasp/dependencycheck/utils/Checksum.html | 358 ++ .../utils/DependencyVersion.html | 501 ++ .../utils/DependencyVersionUtil.html | 240 + .../utils/DownloadFailedException.html | 306 ++ .../dependencycheck/utils/Downloader.html | 351 ++ .../dependencycheck/utils/FileUtils.html | 325 ++ .../owasp/dependencycheck/utils/Filter.html | 291 + .../utils/InvalidSettingException.html | 306 ++ .../utils/NonClosingStream.html | 304 ++ .../dependencycheck/utils/Settings.KEYS.html | 617 +++ .../owasp/dependencycheck/utils/Settings.html | 557 ++ .../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 | 266 + .../utils/class-use/Downloader.html | 145 + .../utils/class-use/FileUtils.html | 145 + .../utils/class-use/Filter.html | 145 + .../class-use/InvalidSettingException.html | 235 + .../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 | 64 + .../utils/package-summary.html | 241 + .../dependencycheck/utils/package-tree.html | 167 + .../dependencycheck/utils/package-use.html | 241 + .../apidocs/overview-frame.html | 67 + .../apidocs/overview-summary.html | 265 + .../apidocs/overview-tree.html | 235 + dependency-check-core/apidocs/package-list | 13 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes .../apidocs/serialized-form.html | 647 +++ dependency-check-core/apidocs/stylesheet.css | 29 + dependency-check-core/checkstyle.html | 295 ++ dependency-check-core/checkstyle.rss | 2151 ++++++++ dependency-check-core/cobertura/css/help.css | 22 + dependency-check-core/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 | 56 + ...es-org.owasp.dependencycheck.analyzer.html | 56 + ...es-org.owasp.dependencycheck.data.cpe.html | 32 + ...es-org.owasp.dependencycheck.data.cwe.html | 26 + ...efiles-org.owasp.dependencycheck.data.html | 29 + ...org.owasp.dependencycheck.data.lucene.html | 56 + ...org.owasp.dependencycheck.data.nvdcve.html | 32 + ...owasp.dependencycheck.data.nvdcve.xml.html | 32 + ...-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 + ...files-org.owasp.dependencycheck.utils.html | 53 + .../cobertura/frame-sourcefiles.html | 326 ++ ...ry-org.owasp.dependencycheck.analyzer.html | 65 + ...ry-org.owasp.dependencycheck.data.cpe.html | 50 + ...ry-org.owasp.dependencycheck.data.cwe.html | 44 + ...ummary-org.owasp.dependencycheck.data.html | 51 + ...org.owasp.dependencycheck.data.lucene.html | 64 + ...org.owasp.dependencycheck.data.nvdcve.html | 49 + ...owasp.dependencycheck.data.nvdcve.xml.html | 51 + ...-org.owasp.dependencycheck.dependency.html | 62 + ...ame-summary-org.owasp.dependencycheck.html | 54 + ...sp.dependencycheck.jaxb.pom.generated.html | 165 + ...ry-org.owasp.dependencycheck.jaxb.pom.html | 43 + ...y-org.owasp.dependencycheck.reporting.html | 45 + ...mmary-org.owasp.dependencycheck.utils.html | 65 + .../cobertura/frame-summary.html | 42 + 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 dependency-check-core/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + dependency-check-core/cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + .../org.owasp.dependencycheck.Engine.html | 676 +++ ...ndencycheck.analyzer.AbstractAnalyzer.html | 154 + ...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 | 542 ++ ...k.analyzer.DependencyBundlingAnalyzer.html | 575 ++ ...ycheck.analyzer.FalsePositiveAnalyzer.html | 589 +++ ...ndencycheck.analyzer.FileNameAnalyzer.html | 268 + ...dependencycheck.analyzer.HintAnalyzer.html | 279 + ....dependencycheck.analyzer.JarAnalyzer.html | 1829 +++++++ ...encycheck.analyzer.JavaScriptAnalyzer.html | 257 + ...endencycheck.data.CachedWebDataSource.html | 100 + ....dependencycheck.data.UpdateException.html | 154 + ...sp.dependencycheck.data.UpdateService.html | 151 + ....dependencycheck.data.cpe.CPEAnalyzer.html | 1385 +++++ ...owasp.dependencycheck.data.cpe.Fields.html | 111 + ....owasp.dependencycheck.data.cpe.Index.html | 330 ++ ...p.dependencycheck.data.cpe.IndexEntry.html | 366 ++ ....owasp.dependencycheck.data.cwe.CweDB.html | 175 + ...p.dependencycheck.data.cwe.CweHandler.html | 128 + ...ndencycheck.data.lucene.AbstractIndex.html | 621 +++ ....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 | 213 + ...check.data.lucene.SearchFieldAnalyzer.html | 205 + ...eck.data.lucene.SearchVersionAnalyzer.html | 164 + ...a.lucene.TokenPairConcatenatingFilter.html | 214 + ...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 | 1167 ++++ ...cycheck.data.nvdcve.DatabaseException.html | 122 + ...dencycheck.data.nvdcve.NvdCveAnalyzer.html | 443 ++ ...check.data.nvdcve.xml.DatabaseUpdater.html | 1089 ++++ ....data.nvdcve.xml.InvalidDataException.html | 124 + ...check.data.nvdcve.xml.NvdCve12Handler.html | 462 ++ ...check.data.nvdcve.xml.NvdCve20Handler.html | 909 ++++ ...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 + ....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 | 406 ++ ...owasp.dependencycheck.utils.FileUtils.html | 236 + ...rg.owasp.dependencycheck.utils.Filter.html | 142 + ...cycheck.utils.InvalidSettingException.html | 154 + ...ependencycheck.utils.NonClosingStream.html | 119 + ....owasp.dependencycheck.utils.Settings.html | 777 +++ ....dependencycheck.utils.UrlStringUtils.html | 210 + dependency-check-core/cpd.html | 264 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + dependency-check-core/css/print.css | 23 + dependency-check-core/css/site.css | 1 + .../dependency-updates-report.html | 780 +++ dependency-check-core/failsafe-report.html | 443 ++ dependency-check-core/findbugs.html | 322 ++ .../images/accessories-text-editor.png | Bin 0 -> 746 bytes 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 dependency-check-core/images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes 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 dependency-check-core/images/remove.gif | Bin 0 -> 607 bytes dependency-check-core/images/rss.png | Bin 0 -> 474 bytes dependency-check-core/images/update.gif | Bin 0 -> 1090 bytes dependency-check-core/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 dependency-check-core/index.html | 182 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + dependency-check-core/license.html | 849 +++ .../plugin-updates-report.html | 860 +++ dependency-check-core/pmd.html | 473 ++ dependency-check-core/project-info.html | 185 + dependency-check-core/project-reports.html | 285 + dependency-check-core/project-summary.html | 217 + dependency-check-core/surefire-report.html | 1151 ++++ dependency-check-core/taglist.html | 383 ++ .../xref-test/allclasses-frame.html | 110 + dependency-check-core/xref-test/index.html | 24 + .../EngineIntegrationTest.html | 84 + .../analyzer/AbstractAnalyzerTest.html | 79 + .../analyzer/AnalyzerServiceTest.html | 89 + .../analyzer/ArchiveAnalyzerTest.html | 171 + .../analyzer/FileNameAnalyzerTest.html | 154 + .../analyzer/JarAnalyzerTest.html | 173 + .../analyzer/package-frame.html | 36 + .../analyzer/package-summary.html | 87 + .../data/cpe/BaseIndexTestCase.html | 153 + .../data/cpe/CPEAnalyzerTest.html | 268 + .../data/cpe/IndexEntryTest.html | 80 + .../data/cpe/IndexIntegrationTest.html | 89 + .../dependencycheck/data/cpe/IndexTest.html | 117 + .../data/cpe/package-frame.html | 36 + .../data/cpe/package-summary.html | 87 + .../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 | 94 + .../data/lucene/UrlTokenizingFilterTest.html | 108 + .../data/lucene/package-frame.html | 33 + .../data/lucene/package-summary.html | 82 + .../data/nvdcve/BaseDBTestCase.html | 135 + .../data/nvdcve/CveDBTest.html | 119 + .../data/nvdcve/package-frame.html | 27 + .../data/nvdcve/package-summary.html | 72 + .../xml/DatabaseUpdaterIntegrationTest.html | 77 + .../nvdcve/xml/NvdCve_1_2_HandlerTest.html | 86 + .../nvdcve/xml/NvdCve_2_0_HandlerTest.html | 92 + .../data/nvdcve/xml/package-frame.html | 30 + .../data/nvdcve/xml/package-summary.html | 77 + .../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 | 124 + .../reporting/package-frame.html | 24 + .../reporting/package-summary.html | 67 + .../dependencycheck/utils/ChecksumTest.html | 164 + .../utils/DependencyVersionTest.html | 191 + .../utils/DependencyVersionUtilTest.html | 95 + .../utils/DownloaderIntegrationTest.html | 96 + .../dependencycheck/utils/FileUtilsTest.html | 95 + .../dependencycheck/utils/FilterTest.html | 108 + .../dependencycheck/utils/SettingsTest.html | 180 + .../dependencycheck/utils/package-frame.html | 42 + .../utils/package-summary.html | 97 + .../xref-test/overview-frame.html | 52 + .../xref-test/overview-summary.html | 109 + .../xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 422 ++ dependency-check-core/xref/index.html | 24 + .../org/owasp/dependencycheck/Engine.html | 405 ++ .../analyzer/AbstractAnalyzer.html | 82 + .../analyzer/AnalysisException.html | 81 + .../analyzer/AnalysisPhase.html | 78 + .../dependencycheck/analyzer/Analyzer.html | 116 + .../analyzer/AnalyzerService.html | 80 + .../analyzer/ArchiveAnalyzer.html | 322 ++ .../analyzer/DependencyBundlingAnalyzer.html | 342 ++ .../analyzer/FalsePositiveAnalyzer.html | 343 ++ .../analyzer/FileNameAnalyzer.html | 147 + .../analyzer/HintAnalyzer.html | 158 + .../dependencycheck/analyzer/JarAnalyzer.html | 1126 ++++ .../analyzer/JavaScriptAnalyzer.html | 136 + .../analyzer/package-frame.html | 60 + .../analyzer/package-summary.html | 127 + .../data/CachedWebDataSource.html | 52 + .../dependencycheck/data/UpdateException.html | 83 + .../dependencycheck/data/UpdateService.html | 81 + .../dependencycheck/data/cpe/CPEAnalyzer.html | 808 +++ .../dependencycheck/data/cpe/Fields.html | 58 + .../owasp/dependencycheck/data/cpe/Index.html | 184 + .../dependencycheck/data/cpe/IndexEntry.html | 203 + .../data/cpe/package-frame.html | 39 + .../data/cpe/package-summary.html | 92 + .../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/AbstractIndex.html | 355 ++ .../data/lucene/AbstractTokenizingFilter.html | 99 + .../data/lucene/AlphaNumericTokenizer.html | 78 + .../data/lucene/DependencySimilarity.html | 64 + .../data/lucene/FieldAnalyzer.html | 95 + .../data/lucene/LuceneUtils.html | 117 + .../data/lucene/SearchFieldAnalyzer.html | 112 + .../data/lucene/SearchVersionAnalyzer.html | 88 + .../lucene/TokenPairConcatenatingFilter.html | 121 + .../data/lucene/UrlTokenizingFilter.html | 99 + .../data/lucene/VersionAnalyzer.html | 86 + .../data/lucene/VersionTokenizingFilter.html | 114 + .../data/lucene/package-frame.html | 57 + .../data/lucene/package-summary.html | 122 + .../data/nvdcve/CorruptDatabaseException.html | 66 + .../dependencycheck/data/nvdcve/CveDB.html | 745 +++ .../data/nvdcve/DatabaseException.html | 65 + .../data/nvdcve/NvdCveAnalyzer.html | 237 + .../data/nvdcve/package-frame.html | 33 + .../data/nvdcve/package-summary.html | 82 + .../data/nvdcve/xml/DatabaseUpdater.html | 685 +++ .../data/nvdcve/xml/InvalidDataException.html | 66 + .../data/nvdcve/xml/NvdCve12Handler.html | 261 + .../data/nvdcve/xml/NvdCve20Handler.html | 528 ++ .../data/nvdcve/xml/package-frame.html | 39 + .../data/nvdcve/xml/package-summary.html | 92 + .../dependencycheck/data/package-frame.html | 30 + .../dependencycheck/data/package-summary.html | 77 + .../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 + .../owasp/dependencycheck/utils/Checksum.html | 121 + .../utils/DependencyVersion.html | 269 + .../utils/DependencyVersionUtil.html | 109 + .../utils/DownloadFailedException.html | 83 + .../dependencycheck/utils/Downloader.html | 247 + .../dependencycheck/utils/FileUtils.html | 131 + .../owasp/dependencycheck/utils/Filter.html | 84 + .../utils/InvalidSettingException.html | 83 + .../utils/NonClosingStream.html | 63 + .../owasp/dependencycheck/utils/Settings.html | 429 ++ .../dependencycheck/utils/UrlStringUtils.html | 118 + .../dependencycheck/utils/package-frame.html | 60 + .../utils/package-summary.html | 127 + .../xref/overview-frame.html | 61 + .../xref/overview-summary.html | 124 + dependency-check-core/xref/stylesheet.css | 116 + .../apidocs/allclasses-frame.html | 34 + .../apidocs/allclasses-noframe.html | 34 + .../apidocs/constant-values.html | 173 + .../apidocs/deprecated-list.html | 145 + dependency-check-maven/apidocs/help-doc.html | 216 + dependency-check-maven/apidocs/index-all.html | 234 + dependency-check-maven/apidocs/index.html | 37 + .../maven/DependencyCheckMojo.html | 606 +++ .../owasp/dependencycheck/maven/HelpMojo.html | 301 ++ .../maven/class-use/DependencyCheckMojo.html | 143 + .../maven/class-use/HelpMojo.html | 143 + .../dependencycheck/maven/package-frame.html | 35 + .../maven/package-summary.html | 189 + .../dependencycheck/maven/package-tree.html | 153 + .../dependencycheck/maven/package-use.html | 143 + .../apidocs/overview-tree.html | 155 + dependency-check-maven/apidocs/package-list | 1 + .../apidocs/resources/inherit.gif | Bin 0 -> 57 bytes dependency-check-maven/apidocs/stylesheet.css | 29 + dependency-check-maven/check-mojo.html | 545 ++ dependency-check-maven/checkstyle.html | 302 ++ dependency-check-maven/checkstyle.rss | 247 + dependency-check-maven/cobertura/css/help.css | 22 + dependency-check-maven/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 + ...files-org.owasp.dependencycheck.maven.html | 26 + .../cobertura/frame-sourcefiles.html | 26 + ...mmary-org.owasp.dependencycheck.maven.html | 44 + .../cobertura/frame-summary.html | 30 + dependency-check-maven/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 dependency-check-maven/cobertura/index.html | 25 + .../cobertura/js/customsorttypes.js | 65 + dependency-check-maven/cobertura/js/popup.js | 8 + .../cobertura/js/sortabletable.js | 455 ++ .../cobertura/js/stringbuilder.js | 79 + ...ndencycheck.maven.DependencyCheckMojo.html | 1300 +++++ ....owasp.dependencycheck.maven.HelpMojo.html | 752 +++ dependency-check-maven/configuration.html | 234 + dependency-check-maven/cpd.html | 258 + .../css/apache-maven-fluido-1.3.0.min.css | 9 + dependency-check-maven/css/print.css | 23 + dependency-check-maven/css/site.css | 1 + .../dependency-updates-report.html | 609 +++ dependency-check-maven/findbugs.html | 295 ++ dependency-check-maven/help-mojo.html | 312 ++ .../images/accessories-text-editor.png | Bin 0 -> 746 bytes dependency-check-maven/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 dependency-check-maven/images/contact-new.png | Bin 0 -> 736 bytes .../images/document-properties.png | Bin 0 -> 577 bytes .../images/drive-harddisk.png | Bin 0 -> 700 bytes dependency-check-maven/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 dependency-check-maven/images/remove.gif | Bin 0 -> 607 bytes dependency-check-maven/images/rss.png | Bin 0 -> 474 bytes dependency-check-maven/images/update.gif | Bin 0 -> 1090 bytes dependency-check-maven/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 dependency-check-maven/index.html | 185 + .../js/apache-maven-fluido-1.3.0.min.js | 21 + dependency-check-maven/license.html | 864 +++ dependency-check-maven/plugin-info.html | 331 ++ .../plugin-updates-report.html | 850 +++ dependency-check-maven/pmd.html | 275 + dependency-check-maven/project-info.html | 200 + dependency-check-maven/project-reports.html | 300 ++ dependency-check-maven/project-summary.html | 232 + dependency-check-maven/surefire-report.html | 342 ++ dependency-check-maven/taglist.html | 317 ++ dependency-check-maven/usage.html | 221 + .../xref-test/allclasses-frame.html | 23 + dependency-check-maven/xref-test/index.html | 24 + .../maven/DependencyCheckMojoTest.html | 231 + .../owasp/dependencycheck/maven/MySink.html | 613 +++ .../dependencycheck/maven/package-frame.html | 27 + .../maven/package-summary.html | 72 + .../xref-test/overview-frame.html | 25 + .../xref-test/overview-summary.html | 64 + .../xref-test/stylesheet.css | 116 + .../xref/allclasses-frame.html | 23 + dependency-check-maven/xref/index.html | 24 + .../maven/DependencyCheckMojo.html | 815 +++ .../owasp/dependencycheck/maven/HelpMojo.html | 452 ++ .../dependencycheck/maven/package-frame.html | 27 + .../maven/package-summary.html | 72 + .../xref/overview-frame.html | 25 + .../xref/overview-summary.html | 64 + dependency-check-maven/xref/stylesheet.css | 116 + images/accessories-text-editor.png | Bin 0 -> 746 bytes 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 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 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 index.html | 236 + issue-tracking.html | 227 + js/apache-maven-fluido-1.3.0.min.js | 21 + license.html | 901 ++++ mail-lists.html | 235 + modules.html | 238 + project-info.html | 252 + project-summary.html | 266 + source-repository.html | 240 + team-list.html | 272 + 1133 files changed, 263356 insertions(+) create mode 100644 css/apache-maven-fluido-1.3.0.min.css create mode 100644 css/print.css create mode 100644 css/site.css create mode 100644 dependency-check-ant/apidocs/allclasses-frame.html create mode 100644 dependency-check-ant/apidocs/allclasses-noframe.html create mode 100644 dependency-check-ant/apidocs/constant-values.html create mode 100644 dependency-check-ant/apidocs/deprecated-list.html create mode 100644 dependency-check-ant/apidocs/help-doc.html create mode 100644 dependency-check-ant/apidocs/index-all.html create mode 100644 dependency-check-ant/apidocs/index.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html create mode 100644 dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html create mode 100644 dependency-check-ant/apidocs/overview-tree.html create mode 100644 dependency-check-ant/apidocs/package-list create mode 100644 dependency-check-ant/apidocs/resources/inherit.gif create mode 100644 dependency-check-ant/apidocs/stylesheet.css create mode 100644 dependency-check-ant/checkstyle.html create mode 100644 dependency-check-ant/checkstyle.rss create mode 100644 dependency-check-ant/cobertura/css/help.css create mode 100644 dependency-check-ant/cobertura/css/main.css create mode 100644 dependency-check-ant/cobertura/css/sortabletable.css create mode 100644 dependency-check-ant/cobertura/css/source-viewer.css create mode 100644 dependency-check-ant/cobertura/css/tooltip.css create mode 100644 dependency-check-ant/cobertura/frame-packages.html create mode 100644 dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html create mode 100644 dependency-check-ant/cobertura/frame-sourcefiles.html create mode 100644 dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html create mode 100644 dependency-check-ant/cobertura/frame-summary.html create mode 100644 dependency-check-ant/cobertura/help.html create mode 100644 dependency-check-ant/cobertura/images/blank.png create mode 100644 dependency-check-ant/cobertura/images/downsimple.png create mode 100644 dependency-check-ant/cobertura/images/upsimple.png create mode 100644 dependency-check-ant/cobertura/index.html create mode 100644 dependency-check-ant/cobertura/js/customsorttypes.js create mode 100644 dependency-check-ant/cobertura/js/popup.js create mode 100644 dependency-check-ant/cobertura/js/sortabletable.js create mode 100644 dependency-check-ant/cobertura/js/stringbuilder.js create mode 100644 dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html create mode 100644 dependency-check-ant/configuration.html create mode 100644 dependency-check-ant/cpd.html create mode 100644 dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css create mode 100644 dependency-check-ant/css/print.css create mode 100644 dependency-check-ant/css/site.css create mode 100644 dependency-check-ant/dependency-updates-report.html create mode 100644 dependency-check-ant/findbugs.html create mode 100644 dependency-check-ant/images/accessories-text-editor.png create mode 100644 dependency-check-ant/images/add.gif create mode 100644 dependency-check-ant/images/apache-maven-project-2.png create mode 100644 dependency-check-ant/images/application-certificate.png create mode 100644 dependency-check-ant/images/contact-new.png create mode 100644 dependency-check-ant/images/document-properties.png create mode 100644 dependency-check-ant/images/drive-harddisk.png create mode 100644 dependency-check-ant/images/fix.gif create mode 100644 dependency-check-ant/images/icon_error_sml.gif create mode 100644 dependency-check-ant/images/icon_help_sml.gif create mode 100644 dependency-check-ant/images/icon_info_sml.gif create mode 100644 dependency-check-ant/images/icon_success_sml.gif create mode 100644 dependency-check-ant/images/icon_warning_sml.gif create mode 100644 dependency-check-ant/images/image-x-generic.png create mode 100644 dependency-check-ant/images/internet-web-browser.png create mode 100644 dependency-check-ant/images/logos/build-by-maven-black.png create mode 100644 dependency-check-ant/images/logos/build-by-maven-white.png create mode 100644 dependency-check-ant/images/logos/maven-feather.png create mode 100644 dependency-check-ant/images/network-server.png create mode 100644 dependency-check-ant/images/package-x-generic.png create mode 100644 dependency-check-ant/images/profiles/pre-release.png create mode 100644 dependency-check-ant/images/profiles/retired.png create mode 100644 dependency-check-ant/images/profiles/sandbox.png create mode 100644 dependency-check-ant/images/remove.gif create mode 100644 dependency-check-ant/images/rss.png create mode 100644 dependency-check-ant/images/update.gif create mode 100644 dependency-check-ant/images/window-new.png create mode 100644 dependency-check-ant/img/glyphicons-halflings-white.png create mode 100644 dependency-check-ant/img/glyphicons-halflings.png create mode 100644 dependency-check-ant/index.html create mode 100644 dependency-check-ant/installation.html create mode 100644 dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js create mode 100644 dependency-check-ant/license.html create mode 100644 dependency-check-ant/plugin-updates-report.html create mode 100644 dependency-check-ant/pmd.html create mode 100644 dependency-check-ant/project-info.html create mode 100644 dependency-check-ant/project-reports.html create mode 100644 dependency-check-ant/project-summary.html create mode 100644 dependency-check-ant/surefire-report.html create mode 100644 dependency-check-ant/taglist.html create mode 100644 dependency-check-ant/usage.html create mode 100644 dependency-check-ant/xref-test/allclasses-frame.html create mode 100644 dependency-check-ant/xref-test/index.html create mode 100644 dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html create mode 100644 dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 dependency-check-ant/xref-test/overview-frame.html create mode 100644 dependency-check-ant/xref-test/overview-summary.html create mode 100644 dependency-check-ant/xref-test/stylesheet.css create mode 100644 dependency-check-ant/xref/allclasses-frame.html create mode 100644 dependency-check-ant/xref/index.html create mode 100644 dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html create mode 100644 dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html create mode 100644 dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html create mode 100644 dependency-check-ant/xref/overview-frame.html create mode 100644 dependency-check-ant/xref/overview-summary.html create mode 100644 dependency-check-ant/xref/stylesheet.css create mode 100644 dependency-check-cli/apidocs/allclasses-frame.html create mode 100644 dependency-check-cli/apidocs/allclasses-noframe.html create mode 100644 dependency-check-cli/apidocs/constant-values.html create mode 100644 dependency-check-cli/apidocs/deprecated-list.html create mode 100644 dependency-check-cli/apidocs/help-doc.html create mode 100644 dependency-check-cli/apidocs/index-all.html create mode 100644 dependency-check-cli/apidocs/index.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html create mode 100644 dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html create mode 100644 dependency-check-cli/apidocs/overview-frame.html create mode 100644 dependency-check-cli/apidocs/overview-summary.html create mode 100644 dependency-check-cli/apidocs/overview-tree.html create mode 100644 dependency-check-cli/apidocs/package-list create mode 100644 dependency-check-cli/apidocs/resources/inherit.gif create mode 100644 dependency-check-cli/apidocs/stylesheet.css create mode 100644 dependency-check-cli/checkstyle.html create mode 100644 dependency-check-cli/checkstyle.rss create mode 100644 dependency-check-cli/cobertura/css/help.css create mode 100644 dependency-check-cli/cobertura/css/main.css create mode 100644 dependency-check-cli/cobertura/css/sortabletable.css create mode 100644 dependency-check-cli/cobertura/css/source-viewer.css create mode 100644 dependency-check-cli/cobertura/css/tooltip.css create mode 100644 dependency-check-cli/cobertura/frame-packages.html create mode 100644 dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html create mode 100644 dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html create mode 100644 dependency-check-cli/cobertura/frame-sourcefiles.html create mode 100644 dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html create mode 100644 dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html create mode 100644 dependency-check-cli/cobertura/frame-summary.html create mode 100644 dependency-check-cli/cobertura/help.html create mode 100644 dependency-check-cli/cobertura/images/blank.png create mode 100644 dependency-check-cli/cobertura/images/downsimple.png create mode 100644 dependency-check-cli/cobertura/images/upsimple.png create mode 100644 dependency-check-cli/cobertura/index.html create mode 100644 dependency-check-cli/cobertura/js/customsorttypes.js create mode 100644 dependency-check-cli/cobertura/js/popup.js create mode 100644 dependency-check-cli/cobertura/js/sortabletable.js create mode 100644 dependency-check-cli/cobertura/js/stringbuilder.js create mode 100644 dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html create mode 100644 dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html create mode 100644 dependency-check-cli/cpd.html create mode 100644 dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css create mode 100644 dependency-check-cli/css/print.css create mode 100644 dependency-check-cli/css/site.css create mode 100644 dependency-check-cli/dependency-updates-report.html create mode 100644 dependency-check-cli/findbugs.html create mode 100644 dependency-check-cli/images/accessories-text-editor.png create mode 100644 dependency-check-cli/images/add.gif create mode 100644 dependency-check-cli/images/apache-maven-project-2.png create mode 100644 dependency-check-cli/images/application-certificate.png create mode 100644 dependency-check-cli/images/contact-new.png create mode 100644 dependency-check-cli/images/document-properties.png create mode 100644 dependency-check-cli/images/drive-harddisk.png create mode 100644 dependency-check-cli/images/fix.gif create mode 100644 dependency-check-cli/images/icon_error_sml.gif create mode 100644 dependency-check-cli/images/icon_help_sml.gif create mode 100644 dependency-check-cli/images/icon_info_sml.gif create mode 100644 dependency-check-cli/images/icon_success_sml.gif create mode 100644 dependency-check-cli/images/icon_warning_sml.gif create mode 100644 dependency-check-cli/images/image-x-generic.png create mode 100644 dependency-check-cli/images/internet-web-browser.png create mode 100644 dependency-check-cli/images/logos/build-by-maven-black.png create mode 100644 dependency-check-cli/images/logos/build-by-maven-white.png create mode 100644 dependency-check-cli/images/logos/maven-feather.png create mode 100644 dependency-check-cli/images/network-server.png create mode 100644 dependency-check-cli/images/package-x-generic.png create mode 100644 dependency-check-cli/images/profiles/pre-release.png create mode 100644 dependency-check-cli/images/profiles/retired.png create mode 100644 dependency-check-cli/images/profiles/sandbox.png create mode 100644 dependency-check-cli/images/remove.gif create mode 100644 dependency-check-cli/images/rss.png create mode 100644 dependency-check-cli/images/update.gif create mode 100644 dependency-check-cli/images/window-new.png create mode 100644 dependency-check-cli/img/glyphicons-halflings-white.png create mode 100644 dependency-check-cli/img/glyphicons-halflings.png create mode 100644 dependency-check-cli/index.html create mode 100644 dependency-check-cli/installation.html create mode 100644 dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js create mode 100644 dependency-check-cli/license.html create mode 100644 dependency-check-cli/plugin-updates-report.html create mode 100644 dependency-check-cli/pmd.html create mode 100644 dependency-check-cli/project-info.html create mode 100644 dependency-check-cli/project-reports.html create mode 100644 dependency-check-cli/project-summary.html create mode 100644 dependency-check-cli/surefire-report.html create mode 100644 dependency-check-cli/taglist.html create mode 100644 dependency-check-cli/xref-test/allclasses-frame.html create mode 100644 dependency-check-cli/xref-test/index.html create mode 100644 dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html create mode 100644 dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 dependency-check-cli/xref-test/overview-frame.html create mode 100644 dependency-check-cli/xref-test/overview-summary.html create mode 100644 dependency-check-cli/xref-test/stylesheet.css create mode 100644 dependency-check-cli/xref/allclasses-frame.html create mode 100644 dependency-check-cli/xref/index.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/App.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html create mode 100644 dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html create mode 100644 dependency-check-cli/xref/overview-frame.html create mode 100644 dependency-check-cli/xref/overview-summary.html create mode 100644 dependency-check-cli/xref/stylesheet.css create mode 100644 dependency-check-core/apidocs/allclasses-frame.html create mode 100644 dependency-check-core/apidocs/allclasses-noframe.html create mode 100644 dependency-check-core/apidocs/constant-values.html create mode 100644 dependency-check-core/apidocs/deprecated-list.html create mode 100644 dependency-check-core/apidocs/help-doc.html create mode 100644 dependency-check-core/apidocs/index-all.html create mode 100644 dependency-check-core/apidocs/index.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Index.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CPEAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Index.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractIndex.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractIndex.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCveAnalyzer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.NvdCveUrl.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.Element.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.Element.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.NvdCveUrl.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/InvalidDataException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.Element.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.Element.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html create mode 100644 dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html create mode 100644 dependency-check-core/apidocs/overview-frame.html create mode 100644 dependency-check-core/apidocs/overview-summary.html create mode 100644 dependency-check-core/apidocs/overview-tree.html create mode 100644 dependency-check-core/apidocs/package-list create mode 100644 dependency-check-core/apidocs/resources/inherit.gif create mode 100644 dependency-check-core/apidocs/serialized-form.html create mode 100644 dependency-check-core/apidocs/stylesheet.css create mode 100644 dependency-check-core/checkstyle.html create mode 100644 dependency-check-core/checkstyle.rss create mode 100644 dependency-check-core/cobertura/css/help.css create mode 100644 dependency-check-core/cobertura/css/main.css create mode 100644 dependency-check-core/cobertura/css/sortabletable.css create mode 100644 dependency-check-core/cobertura/css/source-viewer.css create mode 100644 dependency-check-core/cobertura/css/tooltip.css create mode 100644 dependency-check-core/cobertura/frame-packages.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.xml.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html create mode 100644 dependency-check-core/cobertura/frame-sourcefiles.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.xml.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html create mode 100644 dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html create mode 100644 dependency-check-core/cobertura/frame-summary.html create mode 100644 dependency-check-core/cobertura/help.html create mode 100644 dependency-check-core/cobertura/images/blank.png create mode 100644 dependency-check-core/cobertura/images/downsimple.png create mode 100644 dependency-check-core/cobertura/images/upsimple.png create mode 100644 dependency-check-core/cobertura/index.html create mode 100644 dependency-check-core/cobertura/js/customsorttypes.js create mode 100644 dependency-check-core/cobertura/js/popup.js create mode 100644 dependency-check-core/cobertura/js/sortabletable.js create mode 100644 dependency-check-core/cobertura/js/stringbuilder.js create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CPEAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Index.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractIndex.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html create mode 100644 dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html create mode 100644 dependency-check-core/cpd.html create mode 100644 dependency-check-core/css/apache-maven-fluido-1.3.0.min.css create mode 100644 dependency-check-core/css/print.css create mode 100644 dependency-check-core/css/site.css create mode 100644 dependency-check-core/dependency-updates-report.html create mode 100644 dependency-check-core/failsafe-report.html create mode 100644 dependency-check-core/findbugs.html create mode 100644 dependency-check-core/images/accessories-text-editor.png create mode 100644 dependency-check-core/images/add.gif create mode 100644 dependency-check-core/images/apache-maven-project-2.png create mode 100644 dependency-check-core/images/application-certificate.png create mode 100644 dependency-check-core/images/contact-new.png create mode 100644 dependency-check-core/images/document-properties.png create mode 100644 dependency-check-core/images/drive-harddisk.png create mode 100644 dependency-check-core/images/fix.gif create mode 100644 dependency-check-core/images/icon_error_sml.gif create mode 100644 dependency-check-core/images/icon_help_sml.gif create mode 100644 dependency-check-core/images/icon_info_sml.gif create mode 100644 dependency-check-core/images/icon_success_sml.gif create mode 100644 dependency-check-core/images/icon_warning_sml.gif create mode 100644 dependency-check-core/images/image-x-generic.png create mode 100644 dependency-check-core/images/internet-web-browser.png create mode 100644 dependency-check-core/images/logos/build-by-maven-black.png create mode 100644 dependency-check-core/images/logos/build-by-maven-white.png create mode 100644 dependency-check-core/images/logos/maven-feather.png create mode 100644 dependency-check-core/images/network-server.png create mode 100644 dependency-check-core/images/package-x-generic.png create mode 100644 dependency-check-core/images/profiles/pre-release.png create mode 100644 dependency-check-core/images/profiles/retired.png create mode 100644 dependency-check-core/images/profiles/sandbox.png create mode 100644 dependency-check-core/images/remove.gif create mode 100644 dependency-check-core/images/rss.png create mode 100644 dependency-check-core/images/update.gif create mode 100644 dependency-check-core/images/window-new.png create mode 100644 dependency-check-core/img/glyphicons-halflings-white.png create mode 100644 dependency-check-core/img/glyphicons-halflings.png create mode 100644 dependency-check-core/index.html create mode 100644 dependency-check-core/js/apache-maven-fluido-1.3.0.min.js create mode 100644 dependency-check-core/license.html create mode 100644 dependency-check-core/plugin-updates-report.html create mode 100644 dependency-check-core/pmd.html create mode 100644 dependency-check-core/project-info.html create mode 100644 dependency-check-core/project-reports.html create mode 100644 dependency-check-core/project-summary.html create mode 100644 dependency-check-core/surefire-report.html create mode 100644 dependency-check-core/taglist.html create mode 100644 dependency-check-core/xref-test/allclasses-frame.html create mode 100644 dependency-check-core/xref-test/index.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/CPEAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexIntegrationTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdaterIntegrationTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_1_2_HandlerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_2_0_HandlerTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 dependency-check-core/xref-test/overview-frame.html create mode 100644 dependency-check-core/xref-test/overview-summary.html create mode 100644 dependency-check-core/xref-test/stylesheet.css create mode 100644 dependency-check-core/xref/allclasses-frame.html create mode 100644 dependency-check-core/xref/index.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/Engine.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Index.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractIndex.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html create mode 100644 dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html create mode 100644 dependency-check-core/xref/overview-frame.html create mode 100644 dependency-check-core/xref/overview-summary.html create mode 100644 dependency-check-core/xref/stylesheet.css create mode 100644 dependency-check-maven/apidocs/allclasses-frame.html create mode 100644 dependency-check-maven/apidocs/allclasses-noframe.html create mode 100644 dependency-check-maven/apidocs/constant-values.html create mode 100644 dependency-check-maven/apidocs/deprecated-list.html create mode 100644 dependency-check-maven/apidocs/help-doc.html create mode 100644 dependency-check-maven/apidocs/index-all.html create mode 100644 dependency-check-maven/apidocs/index.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/DependencyCheckMojo.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html create mode 100644 dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html create mode 100644 dependency-check-maven/apidocs/overview-tree.html create mode 100644 dependency-check-maven/apidocs/package-list create mode 100644 dependency-check-maven/apidocs/resources/inherit.gif create mode 100644 dependency-check-maven/apidocs/stylesheet.css create mode 100644 dependency-check-maven/check-mojo.html create mode 100644 dependency-check-maven/checkstyle.html create mode 100644 dependency-check-maven/checkstyle.rss create mode 100644 dependency-check-maven/cobertura/css/help.css create mode 100644 dependency-check-maven/cobertura/css/main.css create mode 100644 dependency-check-maven/cobertura/css/sortabletable.css create mode 100644 dependency-check-maven/cobertura/css/source-viewer.css create mode 100644 dependency-check-maven/cobertura/css/tooltip.css create mode 100644 dependency-check-maven/cobertura/frame-packages.html create mode 100644 dependency-check-maven/cobertura/frame-sourcefiles-org.owasp.dependencycheck.maven.html create mode 100644 dependency-check-maven/cobertura/frame-sourcefiles.html create mode 100644 dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html create mode 100644 dependency-check-maven/cobertura/frame-summary.html create mode 100644 dependency-check-maven/cobertura/help.html create mode 100644 dependency-check-maven/cobertura/images/blank.png create mode 100644 dependency-check-maven/cobertura/images/downsimple.png create mode 100644 dependency-check-maven/cobertura/images/upsimple.png create mode 100644 dependency-check-maven/cobertura/index.html create mode 100644 dependency-check-maven/cobertura/js/customsorttypes.js create mode 100644 dependency-check-maven/cobertura/js/popup.js create mode 100644 dependency-check-maven/cobertura/js/sortabletable.js create mode 100644 dependency-check-maven/cobertura/js/stringbuilder.js create mode 100644 dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html create mode 100644 dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html create mode 100644 dependency-check-maven/configuration.html create mode 100644 dependency-check-maven/cpd.html create mode 100644 dependency-check-maven/css/apache-maven-fluido-1.3.0.min.css create mode 100644 dependency-check-maven/css/print.css create mode 100644 dependency-check-maven/css/site.css create mode 100644 dependency-check-maven/dependency-updates-report.html create mode 100644 dependency-check-maven/findbugs.html create mode 100644 dependency-check-maven/help-mojo.html create mode 100644 dependency-check-maven/images/accessories-text-editor.png create mode 100644 dependency-check-maven/images/add.gif create mode 100644 dependency-check-maven/images/apache-maven-project-2.png create mode 100644 dependency-check-maven/images/application-certificate.png create mode 100644 dependency-check-maven/images/contact-new.png create mode 100644 dependency-check-maven/images/document-properties.png create mode 100644 dependency-check-maven/images/drive-harddisk.png create mode 100644 dependency-check-maven/images/fix.gif create mode 100644 dependency-check-maven/images/icon_error_sml.gif create mode 100644 dependency-check-maven/images/icon_help_sml.gif create mode 100644 dependency-check-maven/images/icon_info_sml.gif create mode 100644 dependency-check-maven/images/icon_success_sml.gif create mode 100644 dependency-check-maven/images/icon_warning_sml.gif create mode 100644 dependency-check-maven/images/image-x-generic.png create mode 100644 dependency-check-maven/images/internet-web-browser.png create mode 100644 dependency-check-maven/images/logos/build-by-maven-black.png create mode 100644 dependency-check-maven/images/logos/build-by-maven-white.png create mode 100644 dependency-check-maven/images/logos/maven-feather.png create mode 100644 dependency-check-maven/images/network-server.png create mode 100644 dependency-check-maven/images/package-x-generic.png create mode 100644 dependency-check-maven/images/profiles/pre-release.png create mode 100644 dependency-check-maven/images/profiles/retired.png create mode 100644 dependency-check-maven/images/profiles/sandbox.png create mode 100644 dependency-check-maven/images/remove.gif create mode 100644 dependency-check-maven/images/rss.png create mode 100644 dependency-check-maven/images/update.gif create mode 100644 dependency-check-maven/images/window-new.png create mode 100644 dependency-check-maven/img/glyphicons-halflings-white.png create mode 100644 dependency-check-maven/img/glyphicons-halflings.png create mode 100644 dependency-check-maven/index.html create mode 100644 dependency-check-maven/js/apache-maven-fluido-1.3.0.min.js create mode 100644 dependency-check-maven/license.html create mode 100644 dependency-check-maven/plugin-info.html create mode 100644 dependency-check-maven/plugin-updates-report.html create mode 100644 dependency-check-maven/pmd.html create mode 100644 dependency-check-maven/project-info.html create mode 100644 dependency-check-maven/project-reports.html create mode 100644 dependency-check-maven/project-summary.html create mode 100644 dependency-check-maven/surefire-report.html create mode 100644 dependency-check-maven/taglist.html create mode 100644 dependency-check-maven/usage.html create mode 100644 dependency-check-maven/xref-test/allclasses-frame.html create mode 100644 dependency-check-maven/xref-test/index.html create mode 100644 dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/DependencyCheckMojoTest.html create mode 100644 dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/MySink.html create mode 100644 dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-frame.html create mode 100644 dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-summary.html create mode 100644 dependency-check-maven/xref-test/overview-frame.html create mode 100644 dependency-check-maven/xref-test/overview-summary.html create mode 100644 dependency-check-maven/xref-test/stylesheet.css create mode 100644 dependency-check-maven/xref/allclasses-frame.html create mode 100644 dependency-check-maven/xref/index.html create mode 100644 dependency-check-maven/xref/org/owasp/dependencycheck/maven/DependencyCheckMojo.html create mode 100644 dependency-check-maven/xref/org/owasp/dependencycheck/maven/HelpMojo.html create mode 100644 dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-frame.html create mode 100644 dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-summary.html create mode 100644 dependency-check-maven/xref/overview-frame.html create mode 100644 dependency-check-maven/xref/overview-summary.html create mode 100644 dependency-check-maven/xref/stylesheet.css create mode 100644 images/accessories-text-editor.png create mode 100644 images/add.gif create mode 100644 images/apache-maven-project-2.png create mode 100644 images/application-certificate.png create mode 100644 images/contact-new.png create mode 100644 images/document-properties.png create mode 100644 images/drive-harddisk.png create mode 100644 images/fix.gif create mode 100644 images/icon_error_sml.gif create mode 100644 images/icon_help_sml.gif create mode 100644 images/icon_info_sml.gif create mode 100644 images/icon_success_sml.gif create mode 100644 images/icon_warning_sml.gif create mode 100644 images/image-x-generic.png create mode 100644 images/internet-web-browser.png create mode 100644 images/logos/build-by-maven-black.png create mode 100644 images/logos/build-by-maven-white.png create mode 100644 images/logos/maven-feather.png create mode 100644 images/network-server.png create mode 100644 images/package-x-generic.png create mode 100644 images/profiles/pre-release.png create mode 100644 images/profiles/retired.png create mode 100644 images/profiles/sandbox.png create mode 100644 images/remove.gif create mode 100644 images/rss.png create mode 100644 images/update.gif create mode 100644 images/window-new.png create mode 100644 img/glyphicons-halflings-white.png create mode 100644 img/glyphicons-halflings.png create mode 100644 index.html create mode 100644 issue-tracking.html create mode 100644 js/apache-maven-fluido-1.3.0.min.js create mode 100644 license.html create mode 100644 mail-lists.html create mode 100644 modules.html create mode 100644 project-info.html create mode 100644 project-summary.html create mode 100644 source-repository.html create mode 100644 team-list.html diff --git a/css/apache-maven-fluido-1.3.0.min.css b/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/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/print.css b/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/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/site.css b/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/dependency-check-ant/apidocs/allclasses-frame.html b/dependency-check-ant/apidocs/allclasses-frame.html new file mode 100644 index 000000000..d9ba34e40 --- /dev/null +++ b/dependency-check-ant/apidocs/allclasses-frame.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (dependency-check-ant 1.0.1 API) + + + + + + + + + + + +All Classes +
+ + + + + +
DependencyCheckTask +
+DependencyCheckTask.ReportFormats +
+
+ + + diff --git a/dependency-check-ant/apidocs/allclasses-noframe.html b/dependency-check-ant/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..158b19afd --- /dev/null +++ b/dependency-check-ant/apidocs/allclasses-noframe.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (dependency-check-ant 1.0.1 API) + + + + + + + + + + + +All Classes +
+ + + + + +
DependencyCheckTask +
+DependencyCheckTask.ReportFormats +
+
+ + + diff --git a/dependency-check-ant/apidocs/constant-values.html b/dependency-check-ant/apidocs/constant-values.html new file mode 100644 index 000000000..25b4d802b --- /dev/null +++ b/dependency-check-ant/apidocs/constant-values.html @@ -0,0 +1,145 @@ + + + + + + + +Constant Field Values (dependency-check-ant 1.0.1 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Constant Field Values

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

+Deprecated API

+
+
+Contents + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-ant/apidocs/help-doc.html b/dependency-check-ant/apidocs/help-doc.html new file mode 100644 index 000000000..8483ffaa6 --- /dev/null +++ b/dependency-check-ant/apidocs/help-doc.html @@ -0,0 +1,216 @@ + + + + + + + +API Help (dependency-check-ant 1.0.1 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/dependency-check-ant/apidocs/index-all.html b/dependency-check-ant/apidocs/index-all.html new file mode 100644 index 000000000..872a848bf --- /dev/null +++ b/dependency-check-ant/apidocs/index-all.html @@ -0,0 +1,253 @@ + + + + + + + +Index (dependency-check-ant 1.0.1 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. +
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. +
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. +
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. +
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. +
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. +
+
+A D E G I O S + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-ant/apidocs/index.html b/dependency-check-ant/apidocs/index.html new file mode 100644 index 000000000..239ca9d25 --- /dev/null +++ b/dependency-check-ant/apidocs/index.html @@ -0,0 +1,37 @@ + + + + + + + +dependency-check-ant 1.0.1 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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html new file mode 100644 index 000000000..a818e48de --- /dev/null +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.ReportFormats.html @@ -0,0 +1,293 @@ + + + + + + + +DependencyCheckTask.ReportFormats (dependency-check-ant 1.0.1 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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html new file mode 100644 index 000000000..509784f13 --- /dev/null +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -0,0 +1,790 @@ + + + + + + + +DependencyCheckTask (dependency-check-ant 1.0.1 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.
+ StringgetProxyPort() + +
+          Get the value of proxyPort.
+ StringgetProxyUrl() + +
+          Get the value of proxyUrl.
+ StringgetReportFormat() + +
+          Get the value of reportFormat.
+ StringgetReportOutputDirectory() + +
+          Get the value of reportOutputDirectory.
+ 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.
+ voidsetProxyPort(String proxyPort) + +
+          Set the value of proxyPort.
+ voidsetProxyUrl(String proxyUrl) + +
+          Set the value of proxyUrl.
+ 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.
+ + + + + + + +
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
+
+
+
+ +

+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
+
+
+
+ +

+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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.ReportFormats.html new file mode 100644 index 000000000..24c5dde1a --- /dev/null +++ b/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 1.0.1 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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/class-use/DependencyCheckTask.html new file mode 100644 index 000000000..167356fb8 --- /dev/null +++ b/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 1.0.1 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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..88f9ccbb7 --- /dev/null +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs (dependency-check-ant 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.taskdefs + + + + +
+Classes  + +
+DependencyCheckTask +
+DependencyCheckTask.ReportFormats
+ + + + diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..d6ce2734f --- /dev/null +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,188 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs (dependency-check-ant 1.0.1 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/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html new file mode 100644 index 000000000..a8fa1c409 --- /dev/null +++ b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-tree.html @@ -0,0 +1,156 @@ + + + + + + + +org.owasp.dependencycheck.taskdefs Class Hierarchy (dependency-check-ant 1.0.1 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

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

+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html b/dependency-check-ant/apidocs/org/owasp/dependencycheck/taskdefs/package-use.html new file mode 100644 index 000000000..1aa679460 --- /dev/null +++ b/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 1.0.1 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/dependency-check-ant/apidocs/overview-tree.html b/dependency-check-ant/apidocs/overview-tree.html new file mode 100644 index 000000000..423bfd6c9 --- /dev/null +++ b/dependency-check-ant/apidocs/overview-tree.html @@ -0,0 +1,158 @@ + + + + + + + +Class Hierarchy (dependency-check-ant 1.0.1 API) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For All Packages

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

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-ant/apidocs/package-list b/dependency-check-ant/apidocs/package-list new file mode 100644 index 000000000..06d7c854a --- /dev/null +++ b/dependency-check-ant/apidocs/package-list @@ -0,0 +1 @@ +org.owasp.dependencycheck.taskdefs diff --git a/dependency-check-ant/apidocs/resources/inherit.gif b/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/dependency-check-ant/apidocs/stylesheet.css b/dependency-check-ant/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/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/dependency-check-ant/checkstyle.html b/dependency-check-ant/checkstyle.html new file mode 100644 index 000000000..29768deda --- /dev/null +++ b/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
18000
+
+

Files

+ + + + + +
FilesInfosWarningsErrors
+
+

Details

+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/dependency-check-ant/checkstyle.rss b/dependency-check-ant/checkstyle.rss new file mode 100644 index 000000000..cedea92a6 --- /dev/null +++ b/dependency-check-ant/checkstyle.rss @@ -0,0 +1,289 @@ + + + + + dependency-check-ant - Checkstyle report + https://github.com/jeremylong/DependencyCheck.git/dependency-check-ant + dependency-check-ant - Checkstyle report + en-us + ©2012 - 2013 OWASP + + File: 18, + 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/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/dependency-check-ant/cobertura/css/help.css b/dependency-check-ant/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/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/dependency-check-ant/cobertura/css/main.css b/dependency-check-ant/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/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/dependency-check-ant/cobertura/css/sortabletable.css b/dependency-check-ant/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/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/dependency-check-ant/cobertura/css/source-viewer.css b/dependency-check-ant/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/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/dependency-check-ant/cobertura/css/tooltip.css b/dependency-check-ant/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/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/dependency-check-ant/cobertura/frame-packages.html b/dependency-check-ant/cobertura/frame-packages.html new file mode 100644 index 000000000..f6f24f05d --- /dev/null +++ b/dependency-check-ant/cobertura/frame-packages.html @@ -0,0 +1,20 @@ + + + + +Coverage Report + + + +
Packages
+ + + + + + + +
All
org.owasp.dependencycheck.taskdefs
+ + diff --git a/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html b/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html new file mode 100644 index 000000000..0c6a0bd37 --- /dev/null +++ b/dependency-check-ant/cobertura/frame-sourcefiles-org.owasp.dependencycheck.taskdefs.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
+org.owasp.dependencycheck.taskdefs +
+
 
+
Classes
+ + + + + + +
DependencyCheckTask (57%)
+ + diff --git a/dependency-check-ant/cobertura/frame-sourcefiles.html b/dependency-check-ant/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..df063431a --- /dev/null +++ b/dependency-check-ant/cobertura/frame-sourcefiles.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
+All Packages +
+
 
+
Classes
+ + + + + + +
DependencyCheckTask (57%)
+ + diff --git a/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html b/dependency-check-ant/cobertura/frame-summary-org.owasp.dependencycheck.taskdefs.html new file mode 100644 index 000000000..81ccaf551 --- /dev/null +++ b/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
57%
84/145
39%
23/58
2.433
+ +
 
+ + + + + + + +
Classes in this Package Line Coverage Branch Coverage Complexity
DependencyCheckTask
55%
77/138
37%
21/56
2.433
DependencyCheckTask$ReportFormats
100%
7/7
100%
2/2
2.433
+ + + + diff --git a/dependency-check-ant/cobertura/frame-summary.html b/dependency-check-ant/cobertura/frame-summary.html new file mode 100644 index 000000000..853311f41 --- /dev/null +++ b/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
57%
84/145
39%
23/58
2.433
org.owasp.dependencycheck.taskdefs2
57%
84/145
39%
23/58
2.433
+ + + + diff --git a/dependency-check-ant/cobertura/help.html b/dependency-check-ant/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/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/dependency-check-ant/cobertura/images/blank.png b/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/dependency-check-ant/cobertura/images/downsimple.png b/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/dependency-check-ant/cobertura/images/upsimple.png b/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/dependency-check-ant/cobertura/index.html b/dependency-check-ant/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/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/dependency-check-ant/cobertura/js/customsorttypes.js b/dependency-check-ant/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/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/dependency-check-ant/cobertura/js/popup.js b/dependency-check-ant/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/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/dependency-check-ant/cobertura/js/sortabletable.js b/dependency-check-ant/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/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/dependency-check-ant/cobertura/js/stringbuilder.js b/dependency-check-ant/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/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/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html b/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html new file mode 100644 index 000000000..249e0acc8 --- /dev/null +++ b/dependency-check-ant/cobertura/org.owasp.dependencycheck.taskdefs.DependencyCheckTask.html @@ -0,0 +1,930 @@ + + + + +Coverage Report + + + + +
Coverage Report - org.owasp.dependencycheck.taskdefs.DependencyCheckTask
+
 
+ + + + + +
Classes in this File Line Coverage Branch Coverage Complexity
DependencyCheckTask
55%
77/138
37%
21/56
2.433
DependencyCheckTask$ReportFormats
100%
7/7
100%
2/2
2.433
+
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 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.LogManager;
 27  
 import java.util.logging.Logger;
 28  
 import org.apache.tools.ant.BuildException;
 29  
 import org.apache.tools.ant.Task;
 30  
 import org.apache.tools.ant.types.EnumeratedAttribute;
 31  
 import org.apache.tools.ant.types.Reference;
 32  
 import org.apache.tools.ant.types.Resource;
 33  
 import org.apache.tools.ant.types.ResourceCollection;
 34  
 import org.apache.tools.ant.types.resources.FileProvider;
 35  
 import org.apache.tools.ant.types.resources.Resources;
 36  
 import org.owasp.dependencycheck.Engine;
 37  
 import org.owasp.dependencycheck.dependency.Dependency;
 38  
 import org.owasp.dependencycheck.dependency.Vulnerability;
 39  
 import org.owasp.dependencycheck.reporting.ReportGenerator;
 40  
 import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
 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  12
         super();
 64  12
     }
 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  12
     private Resources path = null;
 71  
     /**
 72  
      * Reference to path/fileset to convert
 73  
      */
 74  12
     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  12
         if (isReference()) {
 84  0
             throw new BuildException("Nested elements are not allowed when using the refid attribute.");
 85  
         }
 86  12
         getPath().add(rc);
 87  12
     }
 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  12
         if (path == null) {
 97  9
             path = new Resources(getProject());
 98  9
             path.setCache(true);
 99  
         }
 100  12
         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  24
         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  12
         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  12
     }
 141  
     // END COPY from org.apache.tools.ant.taskdefs
 142  
     /**
 143  
      * The application name for the report.
 144  
      */
 145  12
     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  12
         this.applicationName = applicationName;
 163  12
     }
 164  
     /**
 165  
      * The location of the data directory that contains
 166  
      */
 167  12
     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  12
     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  12
         this.reportOutputDirectory = reportOutputDirectory;
 208  12
     }
 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  12
     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  3
         this.failBuildOnCVSS = failBuildOnCVSS;
 234  3
     }
 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  12
     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  12
         this.autoUpdate = autoUpdate;
 257  12
     }
 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  12
     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  12
         this.reportFormat = reportFormat.getValue();
 281  12
     }
 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 Connection Timeout.
 328  
      */
 329  
     private String connectionTimeout;
 330  
 
 331  
     /**
 332  
      * Get the value of connectionTimeout.
 333  
      *
 334  
      * @return the value of connectionTimeout
 335  
      */
 336  
     public String getConnectionTimeout() {
 337  0
         return connectionTimeout;
 338  
     }
 339  
 
 340  
     /**
 341  
      * Set the value of connectionTimeout.
 342  
      *
 343  
      * @param connectionTimeout new value of connectionTimeout
 344  
      */
 345  
     public void setConnectionTimeout(String connectionTimeout) {
 346  0
         this.connectionTimeout = connectionTimeout;
 347  0
     }
 348  
 
 349  
     /**
 350  
      * Configures the logger for use by the application.
 351  
      */
 352  
     private static void prepareLogger() {
 353  12
         InputStream in = null;
 354  
         try {
 355  12
             in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
 356  12
             LogManager.getLogManager().reset();
 357  12
             LogManager.getLogManager().readConfiguration(in);
 358  
             //TODO add code to disable fine grained log file.
 359  
 //            Logger logger = LogManager.getLogManager().getLogger("");
 360  
 //            for (Handler h : logger.getHandlers()) {
 361  
 //                if (h.getFormatter(). h.toString());
 362  
 //            }
 363  0
         } catch (IOException ex) {
 364  0
             System.err.println(ex.toString());
 365  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
 366  0
         } catch (SecurityException ex) {
 367  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
 368  
         } finally {
 369  12
             if (in != null) {
 370  
                 try {
 371  12
                     in.close();
 372  0
                 } catch (Exception ex) {
 373  
                     //noinspection UnusedAssignment
 374  0
                     in = null;
 375  12
                 }
 376  
             }
 377  
         }
 378  12
     }
 379  
 
 380  
     @Override
 381  
     public void execute() throws BuildException {
 382  12
         prepareLogger();
 383  
 
 384  12
         dealWithReferences();
 385  12
         validateConfiguration();
 386  9
         populateSettings();
 387  
 
 388  9
         final Engine engine = new Engine();
 389  9
         for (Resource resource : path) {
 390  15
             final FileProvider provider = resource.as(FileProvider.class);
 391  15
             if (provider != null) {
 392  15
                 final File file = provider.getFile();
 393  15
                 if (file != null && file.exists()) {
 394  15
                     engine.scan(file);
 395  
                 }
 396  
             }
 397  15
         }
 398  
         try {
 399  9
             engine.analyzeDependencies();
 400  9
             final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
 401  9
             reporter.generateReports(reportOutputDirectory, reportFormat);
 402  
 
 403  9
             if (this.failBuildOnCVSS <= 10) {
 404  0
                 checkForFailure(engine.getDependencies());
 405  
             }
 406  0
         } catch (IOException ex) {
 407  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
 408  0
             throw new BuildException("Unable to generate dependency-check report", ex);
 409  0
         } catch (Exception ex) {
 410  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
 411  0
             throw new BuildException("An exception occured; unable to continue task", ex);
 412  9
         }
 413  9
     }
 414  
 
 415  
     /**
 416  
      * Validate the configuration to ensure the parameters have been properly
 417  
      * configured/initialized.
 418  
      *
 419  
      * @throws BuildException if the task was not configured correctly.
 420  
      */
 421  
     private void validateConfiguration() throws BuildException {
 422  12
         if (path == null) {
 423  3
             throw new BuildException("No project dependencies have been defined to analyze.");
 424  
         }
 425  9
         if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
 426  0
             throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
 427  
         }
 428  9
     }
 429  
 
 430  
     /**
 431  
      * Takes the properties supplied and updates the dependency-check settings.
 432  
      * Additionally, this sets the system properties required to change the
 433  
      * proxy url, port, and connection timeout.
 434  
      */
 435  
     private void populateSettings() {
 436  9
         InputStream taskProperties = null;
 437  
         try {
 438  9
             taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
 439  9
             Settings.mergeProperties(taskProperties);
 440  0
         } catch (IOException ex) {
 441  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
 442  0
             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
 443  
         } finally {
 444  9
             if (taskProperties != null) {
 445  
                 try {
 446  9
                     taskProperties.close();
 447  0
                 } catch (IOException ex) {
 448  0
                     Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
 449  9
                 }
 450  
             }
 451  
         }
 452  9
         if (dataDirectory != null) {
 453  0
             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
 454  
         } else {
 455  9
             final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
 456  9
             final File base = jarPath.getParentFile();
 457  9
             final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
 458  9
             final File dataDir = new File(base, sub);
 459  9
             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
 460  
         }
 461  
 
 462  9
         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
 463  
 
 464  9
         if (proxyUrl != null && !proxyUrl.isEmpty()) {
 465  0
             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
 466  
         }
 467  9
         if (proxyPort != null && !proxyPort.isEmpty()) {
 468  0
             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
 469  
         }
 470  9
         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
 471  0
             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
 472  
         }
 473  9
     }
 474  
 
 475  
     /**
 476  
      * Checks to see if a vulnerability has been identified with a CVSS score
 477  
      * that is above the threshold set in the configuration.
 478  
      *
 479  
      * @param dependencies the list of dependency objects
 480  
      * @throws BuildException thrown if a CVSS score is found that is higher
 481  
      * then the threshold set
 482  
      */
 483  
     private void checkForFailure(List<Dependency> dependencies) throws BuildException {
 484  0
         final StringBuilder ids = new StringBuilder();
 485  0
         for (Dependency d : dependencies) {
 486  0
             for (Vulnerability v : d.getVulnerabilities()) {
 487  0
                 if (v.getCvssScore() >= failBuildOnCVSS) {
 488  0
                     if (ids.length() == 0) {
 489  0
                         ids.append(v.getName());
 490  
                     } else {
 491  0
                         ids.append(", ").append(v.getName());
 492  
                     }
 493  
                 }
 494  
             }
 495  
         }
 496  0
         if (ids.length() > 0) {
 497  0
             final String msg = String.format("%n%nDependency-Check Failure:%n"
 498  
                     + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
 499  
                     + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
 500  0
             throw new BuildException(msg);
 501  
         }
 502  0
     }
 503  
 
 504  
     /**
 505  
      * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
 506  
      * etc..
 507  
      */
 508  12
     public static class ReportFormats extends EnumeratedAttribute {
 509  
 
 510  
         /**
 511  
          * Returns the list of values for the report format.
 512  
          *
 513  
          * @return the list of values for the report format
 514  
          */
 515  
         public String[] getValues() {
 516  12
             int i = 0;
 517  12
             final Format[] formats = Format.values();
 518  12
             final String[] values = new String[formats.length];
 519  60
             for (Format format : formats) {
 520  48
                 values[i++] = format.name();
 521  
             }
 522  12
             return values;
 523  
         }
 524  
     }
 525  
 }
+ + + + diff --git a/dependency-check-ant/configuration.html b/dependency-check-ant/configuration.html new file mode 100644 index 000000000..a76250182 --- /dev/null +++ b/dependency-check-ant/configuration.html @@ -0,0 +1,279 @@ + + + + + + + + + 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
ProxyUrl Defines the proxy used to connect to the Internet. Optional
ProxyPort Defines the port for the proxy. Optional
ConnectionTimeout The connection timeout used when downloading data files from the Internet. Optional
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/dependency-check-ant/cpd.html b/dependency-check-ant/cpd.html new file mode 100644 index 000000000..edf19062f --- /dev/null +++ b/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/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css b/dependency-check-ant/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/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/dependency-check-ant/css/print.css b/dependency-check-ant/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/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/dependency-check-ant/css/site.css b/dependency-check-ant/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/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/dependency-check-ant/dependency-updates-report.html b/dependency-check-ant/dependency-updates-report.html new file mode 100644 index 000000000..e6e525a14 --- /dev/null +++ b/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.1compilejar
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.1
Scopecompile
Classifier
Typejar
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/dependency-check-ant/findbugs.html b/dependency-check-ant/findbugs.html new file mode 100644 index 000000000..b4161e7aa --- /dev/null +++ b/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_SYNC389Medium
+
+
+
+ +
+ +
+
+
Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
+ + + +
+
+ + diff --git a/dependency-check-ant/images/accessories-text-editor.png b/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/dependency-check-ant/images/add.gif b/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/dependency-check-ant/images/apache-maven-project-2.png b/dependency-check-ant/images/apache-maven-project-2.png new file mode 100644 index 0000000000000000000000000000000000000000..6c096ec0c7d50ecca14e76dd49b1fcb9382c3d07 GIT binary patch literal 33442 zcma%iWmKC@v~G~1r4*-l3lxV^TvMPp!Ci|x6qg_^6n8J~65L%%(IUk)1d6-6g&V$g z?zw;Oo0XL}qtEQwduF!G)BMvvz-u`vSt$S#G5}zP_yC>`0C=C>Ol`dYNB~s8b0XmB z2=GeG%+bUgVD<}R|3Aq8??L(B=YOgrBOxJj5#RsK`2T%*`USwl02m-O zpdjG^knxaE@Q|K*k@64#(U4J)5I_I(pktuDK*dDCLPi2$Ba+cj5Iz6jJOCmK1sxd! z2@`;Y{ThIbgo28Mg7S<784c472^j?y?*%^ETXceV01Qq-v5&Mwm@4AL#&ldHs!rcY zP2%V!a%)cBb30?b>7L+WSXJW9pp2}XwvMi)m9>q#ho_f!P;f|SSa@Pma>~!tw1UE-;u1({eM4hYb4zP) zU;n`1pP}iQ*}3_J#f{Ca?Va7di_5F)o7+3Yz>!dpQBhG|prWFpp}nw2K*mFTi~oWX z4e*XYOa=X;F`*NN_;=bkBGp_IVlK=Yy6y=H=M$3E0B-ttHB!^hr+KySdETh=N}4fX zxdbLixjy67Fn81B`w{dX;BzLj#De5Yq|!iK(?%}YjUEen44;N+sl{@JZ7OOKG0 z;--PQ?Q0orE6>oMCC!8LJ2wKdI@VrcsgRaG3%j?>f^xbx-r;GbtwW1@cTbCemx$>> z#zVma00GKszvAH8G!z8CYMubb<#?A5;5p@EDiKjN4DBa?-B;0Q2Ufiu)PN=Mwc(z2 zaS&P|aB@%I#qp%sajZkx+wG_}m)S3}%+_!trkHpm%l>$pDiaK$lQ16nrcFGxhw2|) zEP6fHy7q^lVHz6Y`-$%ffG*Lh97L+J?b zkwrlysJ<(1n*HS;hP-lEi#>T?I53>941Sm!Fy{~fPF-cd- z!AHLd!=+v|zM$T}zc$?G=00!fY}E6$!-}~gA@1lv6wCO%BEeDOtIfsP@dTKyzCP-h z9yGCd;ozTZOa3U@j*Y0cCsUa6-TC**_{u)KAWHvH1W}DfbtuOO4pPO~x(3R}AP~6L z{B6|GWC1VtQlDOz;wpAbSK;a5S1Mgr122>xz$=D(pT7>S-O0P$bujnDE@wSM%upM( zWv{w~iBWuIm7pGI-7&0ybSSCL603oEo&X#4GZ*l}ppJX-%Pzb}@8q(#wKw%ofJ%A) zn159rR@9;$Yrra<N)m^7|7&3bzC?-l-X0kQs42|Lb&YNR9BBbk6xR?VCS4v(3q( z-+kz4c>*B)H)dw;FTUJ+pVkhJ&~M1!l01`YI;(~iLZNadAlbG3Sh=-~nEQC$hQ5tt zJ-iE*Ts!|+0PYE*+?*{6pI~a}*2vIY*W{e-$}Mi_QVjz z{dpTv2yJT9m2Qphua!gyD(+1-VoF|8$;I64t(^IHxgE9Pj{srYk6jO94C&9D@H06l z!Ft}mJPO|PP3bxRZ2Ac>;Qj=FI3l>1FJ%2F7T;@a_1klcZcCm#ZTlcT}Gz}2*EgP0V`_`phpC+)ANZgQJ>xS#q9e;Nm&sKJSpPk_WNWY4maA z{1P2k3nV^UY!2uT1)ux^?_8eIn!4M!9Qn7Cj{BFC1^Gk2k3A1}`|$u;9ZTY5LV;lX z${)V|bz@V{GeLMifccp5muhRaL!S-&1OPFlKg%<4!U4kuCMn_|Xdu<|`BXnWW(T)5 zMXWcvoYwT0>-#V6$-7Is{voQEmqb(RXS|ib(iiB9S{;os^dX14;@V4tVD*c(2ngQ+ zh%}pecNXsnpfNF27UV0_{U+ayS9m_~Fnifu`ZNYQ8NA35%OY$?6eLEop_xS0g6e00 zsSd+c;X$oOa~1KDy}W&4%gM^l-U8jUPX1J`!r zmCm3JGEK=y0i$-(&GOhq{>8c**DX$PbyztoZiBwJ4K{gM>!Tp?RDYJn6Cix&J!JVt z*g*Y4_)^q@4( zccLJrAK0*N>xQ6gGEt zxGC0hSYED^`}=%Ye-NHDdURA^_3K24>4=bg<@yugXAh456{HX-cI(*mEWIO{Epsap z9Und+i@cK!nTr_}sX|D470>~(zqYhjH*IIL{(Az%Owu8yaYA!JK$kW8-;rFquRc$r z24z=vS#If%Wu~0+#d|@BnM619Z^yC!*2%qYKmH2_%j1_oTL*oI@llPnk1I4_zhYcH zCAs&(wNWmolcTKc@sJ5BMXb_|$Nix-pEwTKP6K{X)YhV)BZH`(Rp7x5`u^412P(2Zv;4x{_5mg+ygb-JR z(1YjH_X)PI-jNrb=7`-`8XLps|Jy3{wcPA-?D)3mD=v{`)S;)opZ$P62vJZ?@wN*s zr(16BfwQTXU35*w=Rc=PJhQH?DcCDZGXGvrI3xs!( zY$J;504LFYSpbgOt$`Cpr#E+T&%5Lt?+VQK%d3L{eSe*bNB_kR#MU!>kC4R&|I;he z3t#Tr*}0iV9;00Z87fetFK!RmrTelLalofKT@`RBXzbn}ynFl#_j(nvodLJ^nUBY^ zzW_wpu2$}`GH-wtl?I>IS6Wv>(C^RTAH5UPueT3)fd>^=(3q+>I48JMciM2oapbvy z?FX~VM0bX|yXD8Zc7EVW{^Q2wpgZnZ5id1in`1U4fwn`M zm-bO3^!li2wHy9Oear@TD6BH}xeeWY0+=h+XYc+gTYd>#HoLAYTkV5CP**zDNH!%nyT`rnh<; z_xp$*gpNcL%4(!7t1$2hmyJ|7_*d1R8+K!qQDsHXT7w9wqNT=ej?bFjd|o(ufP#$* z8z0|^v5S}aT)A5kX`vE`{)iWrFsB=t%_0wF+B6|N?Y_c;2|(?jMS9kh#H(;3OAR(f zL5bJ8Nux-6N*hY%j|11#&Ji{nu)HULQ%CCWl3-$Ewck~rB8)V@2$C}2%db!bF*(lJoqJ>G*%Qf(9P#+tl)9+GM<=^nMc7^?3N>XU6t_9uW_6-+5nokRGzZEIIpk$7Fc$EGIZ^)%pRwCU1&oYdUU4iuwrt@X`go6kKAH0rV)nm4r{+xfbt!t75qK?k#rHLOAn8`# zxN#}pdGXvfr3zBV6kb@!EC4tbTRlH=dHLy@GmtIo?M&&WsO zd*~ajK9*SEIq3X#>rY<(Lcb?XOINdyC0`<4=C!ElOC8Q4e zbmLp_%oJHjSe2;?ltK)@yQxFOD6TEs*8(w`kNP(LDodQ3G@t z6Y8^Od%GqPy-bLs5XVc4gfS8(2}iTA`-y)O(sZb3r6V$^2}(b_?xH(=bE~uLhh)vT z8>G=6Io|+$zW)*JAc6J3fFrmYqZ)d0~-*U>h<|1+C{G-Sss~R z{hsc12~>~0i-r2|@yI5=GCu2#qy~?|bx|a2<{wwlo#0f4tK2aj$fAb7bE=^d3^pOD^^~{h19S4y zOi?NHsqu7Ln6&qN$N`y@hXdCZD+EbwtY^qpuLy79@)B2BWem4*7ao3Y1Lx`s2EO%o z1hj3Ud=JqFhUH6Bj*m@R>E8}BluV8VDZ3WyxyW??aC$Bkt&AcVxgtmyncvFBTDxEU zyfdsx50KuP3-7m7gI`$nT+LlYmv^~8e1;qP8k||$`{*p)R3*KEEi6pWPkdkg>1}Ou zH&(^sQhz#rc<^d>nXtY_;XeE8X1*6>gLH4iO;CNR(C8ZqUDkm729#IZp)WDmh-gZ)m2T;`H&62y)dLQ*CHxCBM(gjfJ+3sdO&pA(o&fK6q{yqCJToU!M-Cqx zR!1ei!BXW6s&ph12PUTl+1#ZtPrXPtT;#d&dzW_)dn_9CKDRdFOO15Pby1|@R?lt! zx^*?>1NN^3WRqVvY5F)H@8QOh=hu5A561{~fV-+bXehfj_Wv1^jZ;^M;4zeD2`wI+ zTQgVi6;!q?jFiRJlEs(7xK@&FvTJl`OtEK()+}sBf;*6Q-(K84)N|f4gEAi`ypR3S z5Vjkr@mjZ?=szgAkejh>8$sEb5K1lGkV7eDZY#b|$r8VULKtCv7(wsl-Y#a^`=}L| zNWG*(<8>VRjIEpvbx&cb-?$(vknYaEl5gPb9`*#_^doXzaW!t*HaKqQof>lO8f29u z6zXzS)^s?ms;^Drp6@7Z=HhnMP*FX)Q<&lTEWkwLjZqw}O`APM(kkZGba-}H;cr@Q z^##MmlE&vzY`teV-?7o}wQGv1sh{Ab(x74K?Th(GD9n{mY%6Tl`?`fA z!dMIwxJzsO9t@q&C^T9eFnDK9pE32vKut+nYK{MKvTy!?2Cv(-PNX+ON7^P~&l4a5 z@&%#m-aH(1KkVG3p2gJNDSh#==)Zo|v)JNI78SQZTF&dvy#!Sg2^nyp-~kzMlSkzi zkE}y#jm!-pMZnI&pZ%!jBKJA7>lStn%Zm+we|G`QK;i9*3}7O)^;OJ0ZKjwWEE6R9 zYY7VNxbEy3u`k)#%a1{d98|F=JrQVal^aT1$Vy;I?w?W-VAt?F;Urc&hP`Zjg9cL>V+Xicdh64+604+1?lPwmCJGK`1BniHv^gPTivIwO?JL;rjZF-L3%t{H;C6 zZ{o!@ab)u5Fmv73a`av36k1?9YuVkir5Rf(88S*bc z9KMsVTVAwu1X^&G$YlH$zrgbkcQbAvMtpAYI7W}${8DMaF*egs~5ING_9pGVk#MwHB44HxE5w0xvtvg1vS; zAJrz3WuZsKLDpv0zKRw0_1eSh`q{4+`uo(`bs%zCRF)yQ*{=e-lCr5h&=wX~$c3ub zjno_&_TdW$_8m1s5~Xdn_AjOF+{)i5B)NV(VloYGpPEwX1BH|Zdlv9SP#l7|xyD|6 z(te!Mf=aeZ6U{U>1WRLSRR1o%{VLk|*=c9Pfg}0}K)`D`*pB;Y`>NRe$ZpJ1jiQpo z_20=n=Uk=-fvHUtJGsXZe{s>DvCO46tZoYRhf0xahW!VL`k)s00zA1MVUT~L$Mwi#hA zs(BQf&6w7bcd^9v82`l-5^|Q$l&iVnvC=|Ysty&))?J?)Dxz!lLVBN=fg#k;J9LxuSkTl%kuN|3bu%%Wd#gC)UERV zP4>i`F@%HWuJn>Vzs?7ctpqKg25fUMhHAk&>a(i*iB_SA8YY^-BP;I&J7dJEpf{yi zQae*A$Fatf$nRxzxDAP%)zDD?d`v|4ne7;+eAuQD=`_$>mmc;4?8*29Fg<6ODi`rT zz3vn&+ipPXDOw8S8^|1;g+{pBI}9&sKeh#|{9MebP)wH)V4Y5-a5GmR`d|}Zlomu& zT9ihDOu|71F1ByXwQj>O@xbFYPx=mcOv6?1($a>g``UcOD?#`7`_1Fu1ge^FazDC+HQo?~(?Ax-5}kiK8p5bIOq^ z>ukT*b5aVxu2bUquy2%XtM3|l%Xb>sZdP$~-rC7*x_hc8(bB|DVtH&(2m`BOzB=Et zd8n`89MfWF_V)Hk=Aw)&EVEf8^xBHn6;Z$B;hfG1gzM8LF9 zHOTwpZD-02tl^r?NdD;MwUx5NB2Ik+5v+@ypsIhQa0%bk`t0?T|Eur--2q4vvqT|d zPCOFnhX%{6zrItG^LENIc77F^rv_+tAV zG8(!3H+kPvTbL$zWcY0s6hhNODmZmgHM7#ulcA7kh!vMN%iE;A*CotZkCW-7R~HLg zn(X7j`ElFgjGCRF)ndjfoUf6e0NlKz8&8052cm`g0##+Cvso!tzSr}t zH@PxgCn_=qX8|?R#3DTb(4)otfK>>Cb33p9xp4*_F+l<6R?nrfU3jxrOinw}BSJL} zx}rXJp$Nx~A$oUL$;jJ5ySQ>ls7n8w#m*M=u*givl)sBb0*8R=Y~Ia0$|g{hYavu` z1KHWGQ5a}8Kj%I5H%9k(IrNK`K7RCPqrH2F@dJ$EBIbfcQ7f70)sU+#9FTxHAd0X7 zeTRntGo+V{Znot-eFCSh^hhKx$YZmAx#>Ou4E?nbNVC!82rlAH;eA~@$B4E(9;B!* zUHqFI?}QMY>Zi~W-B`ywB-%d#7@n;HvT~EXyK;?BfPeu`gtjg%da1HM*XmRl-C7f% zrZP9uyNhH3xqAZqkywt%S(Egxmf}arb+Nm+I{B+MnowHEZ^uT#p=FdZJkoq%|AInp zj7P)V*KB-pa!P`fby8-i^u-^P1>e8BmNw|2dzjorv<%}ucf3$uwkh`(c~B>&MQdC@ z>AMsQy73npsPT#bK*Cfsv46yIRM`-45ERimN20>UtC?=Rsd$3wMs0>R~i`HXY+NmIm9c!Vf%;U#1x*INc?($IfkdnS{o~21B0!#D?JKCZ~Fwu z_lw!Pu|j2@{?kn2yjA?AqF}nhOyJ-p&v;wQ26kJ8jn3FjN?CG+9@pX2@}Al-bAXAsA#-5Zen z&&rg>FvxZ(4dR_y(GjiwBf%Qrn_a#0m9(QQAs>&hB#il$@X^On@(;;rowfBmNAVn2 zYD)(h`(HPkS~h)?Rnbb^ew}ju!;A|2m_@U9``TyQ$kuO-+ASK?+`3Q*ZG@XT;uJJC zw}V5E_o)YPL)LkIW(jjjHHy&;5gk!#6>T5C+_GfIfW?|qzxi1i+Sg1wpsB^itBXnU zxmLYLO^rYPO}MVMPO5rDMN~}9(da?uumSWiJ&mU?bA}8%1SwVffvy9I4qvD_)+N9@ zbD$+7WT-uUHXXlP=@LM8G zATt=B19S+bQPuG21GHF4#Ix1SvgNUj(!qnT)bG1sN5me)K{r)xsV>*ALBxNtoEON=9`EpYMC>wq!4y7r$^7}2tNzf^P7DKbF?9C3q`jHi@H zQ1GPc{hY75iIskjK+nNE{XqYCs-aB2-OLx8TM=3@{=9m>_v?yF$kl!mY6)_m{(b!#4ti0axo(E6Gb z1b6aVztcI5Hjn0wbBKy|hsLlvavAFO0%6{Ry6;9LJar+3Kk=5L7JHRH(2Se81+REH zS_l-+Q@b7spq;5OM|iToHGfcE`b;M`?IYvXJ3rhn(}QJT_yicdGThvk8|_&f_YL+S zU=v~0i_fwlBQuyBrH(Gl?VT8Vl?o{`5VxX{vo;0mQ1QOhaWc1Tg1xA<$z3bhd)IeEfqg1d8e6>WYk75aaYL7mFW4omO09OR);%Gr9|N|~zRERUAN{y)AD~HBTq)lD z9ZfrSzPfwsS~}=cxKACgXSr^#Xv%6Ov~TO4H43K>DeB%>9nhTAa%g3BH?aOF9(P(@ zB$pN+LA%a{ix;(uqS0|*Cc0_gJYc6k`ADxDPGM25O=ScWo3OF-+9OG@$Mkd`$Y!uDh3ftXXT?*H7n8?(LZ9CulsiRi|FmV2h z7EXRE#`6wamG4VDHzVyoPqlb>*z64%9OqQj>D=7x@U{1IbVKnuS)C{)R$85HJHqeG z+FLAi#K#LU(UQ7p)NaG0xp$cNyW%M+0~c1qKTH2?3q| zmBd$8(#D05tLYdRysYzLIO(Gs!E3j|xb&8`Z=RRN*{~7jNs^Jw1qOvsOcvbTUVNL+ zgw=dC!fDfkIO~KrH^H|LUb=%Zqu`VYX<7LsFD&(x=qAlgi?|6#Y7Q5BayPU@IR`2n zj}o9OdPSo=>16uc-@Z%yhHUo?Ubqu%R!Ltaz3PVvWw(N9Aza$JpFykDjT_{p!iH;E z+_I%6`q9gMnt5s<-8aT1x}nS0OF4lyGDtwxIY$q-YQgCCPFiKi{f@_hXG_WCGc(IJ_IXWWDHrd+NWHI3|6IZja+_-BgR!{^&xRL?kf zrc;9uw#zZj)Hj%VD(<>o7f~vlzBP~Mjcl1S&|f*8j*~Sto+i5Jb1KvBZ=zRisZlu+a!CUN)VR@TSrcQ_nnAiGI!5jl z*!x93nYWGce>WFD^q21I27J0ez4fO4;GMEWc|7a(+HH1uQ6y#F;D?h?I&LPctTfHPke_*6dnh9SmnQPc~r3<{~Zv=2>S~ zfAO9x*MoN5?Q@;=SX~8kebofjILUv%zncgjl78nKMQO&P>olg&P`ewi(U@p&gg8WN zktda>Pa4t^IMhRO&(NCJXViT%4@6ozJ2f6MU_zP=`zJcSPk?$GD;vuIZ@x61o#pbv z*akLL31LCYqAw^V@8|9i?8XEu4&Q^zuJS~M=B{p_XKRwrKAu-^-lS&kElD|aAslc4 zN1(L@VOPR8f>!^$A4gT%koyu(=m|^bqxwJ$c@o1(k8;1j!-Y?Pb{cZBg)(XguCDUQ zv=S91QXrdfgOv3e#KXfPZo|Ue!-Dl_WJsQivxOnvcRvsRKu;@MYHpL`>p|zAK|8Xj zbS<642=vAk$^`40hMTK^isGOjHVyUT^*wUgsxbe7kCT!b*P-ugA;VX=>?eRZJ zhmO%A=P`@mh{n3~1T%-nHo4}5N*`~<0d|{Tv`!(@k5r?k9cW| zS~-!4A1Q58TQ#FT#}qq^pHKsU^!!!xo-q>Rsk526@YGIeWe1#^?;~mlpxnCJd+!i> z6*2Cw?eRZSOIge`;;~4|<0WO@TJ!wO*QDY4Sk2=@Zf&aUBH$Sq38xa^+=o2C% z60`#5!h&_o>J7L!P$r;B_&Y3h!j|v-u>R~Z1{say1CL)1qWG)UCvvz>ky)U5xUnowL26QxOk85Wxnr@#^U8*T}SF! z^Yfwdi?T_fHeSma_hj1-dGHpeooi*329SJ-EzWg4DL!?2f>$6iAc>Du6yB-37 z&#nD66y+J(zr1|iwGZbhoCM`BCA|gT_0uWc}3mJLxnrdG3yZijs zoU*TbLxoZ3R52X-4@Lu$lJY-SIJA&Tf|zrARl5naWEBnR&u3({czA*2O7}T?kTf>a zhk2KQ=D;N-uUjr?nJ;*A>}K7E_!Jj^6>j^QCJ3IMB=?V#f5&5ZDW=8IOxRkceWALm z{=%4U?=d6*+VIBCQdiVnkjz&7F-uW6^5U|0IV;UuDiB+R!VOES|J=7Z^QhYE+srYM z2S=ym=HG3~tl@?MRMr8$gx3bPpN9YCzneM*ob5j7`fNGqURj#8FPTDbgRkWI3urt8 z-mThhNlFmimN48glsX@;Y_YZ8ad^(yM^Ykl z-^;=MF=*v!%W{9Bxu@>3ed8xaxnVji_Ad;8^6*?S)JE$Wx$EP<2B+=kHSUVkElt5> z`M4mFm;Cn7PR`Tu0r6k58j(ePC=$U{1G5k+U2B?T=Ad^ELC7kbSrXPwGA(+`V5_4> zXncJOmcNop-beviQ9|GP7BPniVg0neLjUq#w277=o%6y0sv@-wHX^G&VEj zrmr7=-48iyY)#eNj~?=Ul&E%r&wYr#x6JY<6%JFHtJTC^*ZJE8)g4rfl?#MOYu9!$ zx#JkndE0PJX(^UYJ^^qL9(mfBtct!xU93BO*I1d!rD{gGYT@&-=3$$w`xGxnzjz_} zFb~Qo`T`ee)CQ}u-_|)ENWq3=-*byqJrI$!o>gyMx|sBC@RqwrYx`ebxzEjJ_cK#8=GY^ftr^GSrYYYXUIuXp`=nyk+k{~z~Hz8_rnqg zuk+E!)gRPdS-MzW2%!xiFIKO5;vxVGzbN3_7fP2i`LBaBx1+a>jbWt(5^;HpKf`QG z-v^YQp~*U9?If|0Hcy&jyf`k)Hot-fugz*g*;hLb8+mz0#BW|>z7easqXqPOIsGaW zyxeY}_CB)g=-Bd|`WoWc+@(88SsRZvA}pTsAupW0SnzKKBBFge;wA>okcrvj@7}Ur z&3brR!ok@an>0b4$apVfY)Pr1aY=dnvm(nDx_NC}bD?ccu#A1}o92di& z!=?#xTbmyV*p1bmU&kAiA%*$jayti--1Mb;!czoV`0+y&*6(^<4(6<{o1kpb7KZwZ z6>Dkpf^DtA^bs0Xhgydkg|=|2BHzFxoHpkNVrW?Sq!2j5G7X5sBcJ=zQ{iAWO2_8K zM}DWB*$e4@*q;u*0@8M3KDM8bK#Zra-8{lG7nkvLZNd4}_y&1B|5UOn z6@uhP`utXzjIl{)7^A;R5(PjwIT=+vVBS zfie%YTl4Iws3$+>geFGQQmVe-9UrV|kB=){=TbP-Zm446%+8Z4Tce`1F>U5I-936^vsBg;s$ITM(9>SbSY=HN+CI5Fq^Z0rcfW>Ep4 zrB;AsArQzpWbC%}_Vl`L#n1m5n(g4*v%O!~ymEv``^Y~@niotzMaU^hiWQf4vNj?w zR42qm`1kCXa-uUYnqt#+hBGfQS^#76dr`bKhQV7$x+$R=;X2Ou8wm${LfUIKr(c+E zaoKZ+BX+k5V-qIHaS3&NvV^G8j0LdnO>nYhEH(vjHAUufW72U?h|&tEjm>$Y0wl!oi9WihF<1{|bZYjzm?URwoCXr}gK zFi9w=mby-V74=2&%q*j{G&=g*T{bK$Ci!jDzM>{H&&C{*;^aX2>!aJ*MDJE-mYkrz z6gsAwnu_3nGO=b+P@LbYnUQPUml=oinjBRCRl)RBOe|_b_S@~L=(~m8np#gEHYtt$ zIwB!8I|tTF#(X(R=q=k=SRfD$Fw!t%(pnUV6I;N;{uzfzJ$|ZQESGh8fA00oOX3ET zaHYZO3jVEc;U}Y#oZ}5qH+`_A#QD24J9emXq8%%@`V3|Itnvo=+m_SUmb_WS3i|1N z&fL%l4^tar1w&q$O6Gm!C5WzLRbZ zsjJrGC}d7Yy5DuRKyIqVQ^h*oWzCFd_$GV236EOA@*!Dan;#kxy8tD6KT@E3$CD zRr1v7aUbgP!*vms5ELR%LHmq9z5u?md9ik=P6m@Z5 z5ka1J2he|Cx(^bxEoyDBE-H6gANNhqU($1QGP|mDBu;#Dz^hw~8K0L{6cxlP7Y%_} zgwFP<(4$tD54!%1Z-15S=KO>6TDCwsT!Jtlo++1_^L+L8WJfWjsLes7r;&GrQ~}3N z+Edx`OwYTFsEZd(2}uuBU!%6oCtyD%-C_>azUnq*GD~(+(IQ&MI^CCjXL&9EYQ>e( z1WBHsP9-sVLi1=wOsv27A=9{UFKYs_tZJuSay4{By*fYAfv@iP_+37Hbp4#O`#qU& zT{ANutG3ASgN}{z?|LF4oPxR!8qu0cZepfir#uOb@V`Z0Bltvjb6Tqo*)ea2c zUsF5!)S~)LIXz!yx!~w7RE#!Mdtqht&leY$Eorw?(Q>Bc4m&6W6DQX)Kq4q#sP)o+ z`hAphUm77FgHw=$2celsB&&LjL{mfMieA`wziWS6S393ZrmHJ5C)@1e$=2{4(rezh zsVG+lY_6I1qEIAfYI15>YSgkf`zWjKH_ICEX@;}k?33ozwUScP773SVvFMah|?z#tubQy1PEK(KS>X9bg&Z@j~Cp_a8p{exayZ+3(c~5 z8HGB1iAUEjV;)&n(%jXm#Et*yQ*!3-oB&dasqpv@V(9$4w|CcmYW6-3C;YmuJ?5_j zc7Jbw_-OIAV0cCZjhZDE8fLig;6TEuN6;s)rv@ToJ!8Ut+qweNUew3<(dVx)HKG}U zh^PCege-|G2l3`>V!EcXw4GkR>Z3Asn8eEb-QXKGr)=7IFP~t?^ByRWZa?|8*{;t| z8N+&~)H1x(UTl^N?+kpcNZEKGH~u;oZWbX{Wna#xgzKj~ZH&!l$Xj_T%cVshC;6npMjROTWPn!PJBdef zzcV2)cI~pp&Be&M+C9e$>FWGuVv=dou6ydL4!6oEO9d_2s)ixvGOC3^{)S8H=6PQ) z%~x^V7CIpaMJKpwjVRl|-tp$$Zr9|$Q-qRK<&R(fFxczgjsD>H>?sV^Yye7hJ;Y|m z6i+|LV886}KND*39!5%pw(;@*ETw4Bo73R$HQp3L z?K2er5LCXoN5sHZjm99;w`4_#2unWX#ZM@Y&Cg0=+;vj8WEm1Q;vSd?!Yxa0%TV26 zy7GVwee9^R1tYF2X=PUYG-(7LHxOZep_>K(RK3sC;~j?fGbddj0X_2s6@6Mzu$e|%;lHN&0SYf{}@H<{>?m57Kq zjoBtxN}HKJ%q*%f8Z*=+H?f+y`AVfzZ(0AaPH$dz)lgUgZ?{Y$>8+m9+N72Bww$YN z9mpPSm9R;^5@sOJW?h1!%Ce~v9pi^v>Crob)6Ce$1y-J%8`ID-ira5xYf_Qc5-yaj z`lC?}j&UisjuewSGeZwI6XPr<$R^#gjg0zHosF|8*#bYPSb2rT&Ts9U zc&E)_WjNh85>4a1ZD#vUj10D_#jC&TYj4$?|8+FDd<5J7Nv~>ymZv+6xtPC*L{Y!? zfd1fh=lxLUZ|fvf?*{B4d<)wR%At2_xdoo`wF+^#NYAH-tT%lmP<;-Kfu=`{P2JxA#5&?othjSm!o&Yq?Q-@C474Y>kjoD2% zi{uk2>0Y+HX#VxjsHgA6J?npLm+xOq&HJ~u;5IlIt}PsqgrmqhzS_GwfepPtnsjgt z^$b_l3)9RD&m;_A3FP5d=qF}9RxEW;xWzlPFTZz=*Dv&m*Fjx>89S=>g5u?;$3CfP z5pO$tCWdACM0Va|*gae0QlqlP-ffQ5Tj}1Cg96LD_Zeumsv--W+eRK0S`X(QF12Hh zW=YZWwZ0$grlsk-V`FKJE*P~_kEpo;REZi!#9VETOpl{6R#Tf`ly?es%BD=5w>FWI zvj<%p%70{~P8itb%blQVu{ro_zT3PNYj-%4|McuLqAW^lzLWi)Dm|r(eY33A7bHVj zmKAi53rk<1QoEWw2G3VE?sr;ux$AJ4X(wZ=+RCsIeZ!Zf^pwI1dsY0Uq-+l2Cpveq z`16BTq=tbzm~~=mVqA=2S$)=vlvRB`T+l$njqvXXQZngai8KDY-*YOX{$QNzOb^CN zUZq!4ruEeM_(gFs7dp~t-agD-Q&0D?U~A2O$STI*+SX`;+kzYr;w6RVmdYDC)Ea_ zU>jkdpBbNPAl1Qng@!cjznnk2xg9$SpBtPmsrq(bV0j+IGt&5xx_yW4s4JgRbAbX= zMK>SHYL{f$Z-?XT<5~oZo13B$af!m3APaB{a7A-mnkEYHN@G4NXlP}#;jAc%vBW7; zsJYfFtvV()_uH2m{tWRM?@@Zq-6gL`Ub4JS@OR~lT6uY7oOhOvxi5XD{(>K;WQDby z^m2Pf?hMr)bg^wPcPk^8xjo1_6^M&lwPf=H0s(!i&Qy;ixuzD zf6)b()yqjmtPYSd$J3Qfe13cC|Lknn(0EOF`P0f&c&eRMxfSD2mL+$4&XH6nIQ zTH}=qQ(GOjP<@`YMNu(s!DGjSj3CsvXem8Kak#^gJo1`Lv@9ZY=+jw%%|yx6+whN! z#S&rMv(Y?MHErp@4w4o7{RAbZ!!dhXFP1=&Yo8Q_xa^6hKovYaJ!z0GKCg%K$mIAg zvbmAJvHK5#ao1~uL*Ed>8j#}Ud^l;aMIKfNz7mdhF!#0Ne;ppHo7T4Ok;B*2Y$*on2MQdWe{XNJ|Q z@JGTQ`o89tn#+4|QR@bk?f0v3^6X1Zlt+J+=PlKzXO6<&oJx%GU$Qq@tIZ(F`J3c4 zjVzv6mVzMcoEa0G&L4;i-)e<{xU>^deGkFQ_4g^bt*@|c|M0TZ32D`Xu+_}-{!dR| z8PL@K_Kk@Of&n5Rpi7@Ahph#=V#;#Gd(U+ z*~8u`$hX zFgLRIsAlrc38A-hJ3U&fZUc$EYcua@7&e1eS9i*DXRUKA5`~zrm-JXUq;P$$;FrDX zG15)0i+>Z~vMZ9Vyc-)Gwis70|J z$H!qszUxObvowQJLM@`k&unHIp)}vV^s(Aya9Cd+`-|Q!WQVEp3&h^yw_)l~qQ<^> z1)B{xS9U4sk6B1XxbBg!{xa>_7+gJ?5x-N>jZQZ1b+lE~Q8X-A_6_R_yPQSxorDCv zo0OoRqMr=Jo@`hM5Hc#Jr`{og!V2k#?w!2i?~77gzwfk5QJA499J54D4V-r9?3q*R;_tNaNCcJa#`EC%{`@rl5`n{X+^~?o3e*ojmGJ+5Ce>tj-p(sv}njD6;|sHQI0o0WXjr%t$ zZJa_-Qh7si@JZa}=bMvj$q^1x_8OcUdEbVu^*7KIOY`*%wbjkwU)Snhj4WxDn1 zCBd$|d$2X7IVo7JcO+p}?6l*JE2IVX_1BuHmvKOgPPGVyj+353RLOkmdLygKCjzUm zz*oD%f@`-)qh6Lg&Bc#?omWldlKOS~7Ryg=2eVtNmG_m$Nx~=?1b6mg#Y^hpeK!25 z26khXo2RFvv%k}8RScS4tHj6|yNZ=@j1sXtA@jd?#-p?Ii)BTWIcLwmR%qAT$Hl|C zcavf62^{2KLvsrA&6h}YG&vvg4;kld9v!0i5_XlH2R{uidj}58riM7+N1M)oA`Z}u)_1R=UO_ zILsh)Ygg48KJT-r`1Y>7@u+T%gPxl1qw%X0B===dW8;?Ic{B9L3Q>^N+jqrXr_%Pd zfnc!Z`)ct3Gn;j@F>FShEZN=;+~P|}P*z2bjxJr_(Y@X*W4}0Co!yMu7L9@g$7tR7 zYU<0``X#al1ylu@1!ut{phnRUc8}eX{`$q+8fv`DbK+@7GU$6MO93tF*^l2I8eI)y z*2+7jscrQLv6r;ZFxJtzk5%(4<2f@7pEYab{2RiV)-s-cNALrc=lX1}WkD}cjmo}q zuxBPZTDQqLs-e`%crRsRQFEBBR7(3~(Sn*)fyV9^;a?95>MrB#L(5vsbz+)mAfOud zFjb3_ASBZ{2rzxj2|RooUC`;<7bF%$+iSp@p`PtI6oG;Mh$7~?+J1RlJnb6~ntBW^ z>&hmYQ(`$muV@|02y}`}8e2IQ_*TH8$}@^LtX8$fdqtwxFGx&?_UIe?NBqaX+Hp2A z{y-M+^1|jIVrOe!HOO&)>t67Qvm>E-*XZNQd;?mCI*a|}Rp9pzTY-U1xBtZqfBbl( z_f`|6RM!fuIR_5`%)GiG?rzE-#Rbsa664rHpdJ@e`}N%PQa3PpjE2zY{URgwEgP>3 zl1xKlYmidcbvjV78&eNHQFP-Rg(J4S_(h%=9V|>A1$yuUD8tqu?u0z+*@@*Eb2x+) z+kFK%40TY~5*Cc9&dcm-)>wUf4o394+yIsUBX(gh#z8BejFQ}Ih6THxJx!IE0-~OE z#9j`?KX5UB*Pbdi(%hm|Yg2YQ%_KZ{2r&mv`cBR8P)TUD5j5y@PSZ|0D$c*)Wv!&Z zA8se9yqK|@fvnW1*9P8q1IQI#@!`ZX#Hs1=&tI6teeG>`q}4|dI?(4#~bs$%@LjWTDEpeK`zy> zH6I6R#EdypqB5uiyMfCY{-_aA=jZxo9HMYU^Ha?{SpxE>3RQWx?R3<-;K1|F>N^BZ zC+`*a(+Pz;K%V!bOFNS@CHhH!CXwml(ZwbXj{Rlxk>|5~)Ho67vejfx?LZjrTy3qz zwHwZZW~hyPze*^?#h*3*oK$R?$eVXaqw-K-Tk+(3AjPK9J7=Z{6t5y8-z;i#6_pS` z#;=56;BZ6IKMedQK#IxTO+oZ7#djul>y$nPy}Xsh7l1xa%?Q=_MOB~TA9 z!deaWe?QQ=b6*$W%{LDsLIIz_gvj=8qrm}?xQ#MuU7x4$0|H@|EIwW^Jh8Z2d%C=a zEwyy*dnF|z{23*d!Ei+8Uq2O{axebNNH`M#fimSGJQ^_tTp(K#Uf26fnD#_KcxOHM z3f>M31}Iou$IE;utQ|Y5NIKPvwmlSM-qDF9vaukZWjjG4XU>D$S2`!M&X&C|ZxUKJi6e@? zuzg2)RL>DXsL>+SUy#IoChqvtPD{;gY<#@c!Exl%4j^Mx4^EV8w@h9LS9mAS9@iD; zR86L4i#9$VQ8Kw2E~_Y#Kzg%|t8fdE<%jy7Wz5~YpmR6u+P7XV7MXM%v$<|tmuW$R zU&i`rZZGjc^^zn7QoOULs9MKW4B*@BOr*_=~tw}`%XozRu2SXBYQNea}kF=BZRK;?vcI}ZKcbz z4ubeBMP}m3{#`i^fx5g(|43oU^$lS&@9$7xZ`-5Y_B^Bv;aBrII!5V%3{|2t+fU&L z7?E0Kf6SS^hpz2?VOqhN!wybb&t%pKz?3L&8k6TNHv1h{-pQLs9ZF~8P&LGZm$Y(} z*rHdc-J%DDMA;tPUwbFtqw_fQ$hYM^3dNbX;cE(^d8c?D|vP2vL8w~31#-0N5g_bMghY0V&rgOSvLT64em23PN>^isyifNKpK)1VxJu(6fs($q zbK7mFtm=hWc9ok_iqB$#Z&rK;oXfx;wy;2F>py5|B->PdzvW){G>U^LEYvPY6zM@7 zpvA#jpKBf$Bs5vmZa)`sYh~Xp<~>ePKx?IdR7w|)a%>ILz5^Epbk?2Ycaqmi zq`f{b{f8u-YmeT0jJ${b9wVyf;-bm}k-CiRO^DpHsP~s1i_S#5|MMZQI9g_39-oL( zVmkc%tgia!xS|YK(LZ5n1Z@-&xvHYA8*{}cpXwe-9ocEV5()7b+zC6{*XsS!S>h?4 zW|Bl*5v%(Ui_mO6Cng)Iv)g`s_Ps}l*6=T9p+i2Zh%iK*lTsQYAzozvCSNFsw$N^= zSEuPm(Sr!vZ{?RJ;6No&V_@P-kf%9y=%p08mt@bhdnl1^y3c{}{xz+7jEs7&J+8;? zVs!O$LC_B~)}Q##R}1S{$fAiGC>Y%dd#x938=q}sZQy}$thmZss3uTgeUE3`h4){f zQts{M`%laB3nE2qB=UW=|%2)6SG4G6Y%dZ04(gMyVlk&;580%(9vZ;W0d{O?k z^iWPpy~AVU!W3hk`iYn^oqmqoiQ|ciY1IRcKXks7r$E)$E}%31F4DbILh>{K!AHe0 zEwjtnO)B&~g};*9g&YN9!QY7qWX0Vj{5Di+wrIOBCDzXtn7C`khWZcUuc1CR@VsI= zyFpyz;FMTy5M9U|eSRl*rA{WT@Q;Laj@38@s-MsF3N*@y+Ho2@X&9?Ptu*%{^J$7N zY6M^r!n~x%m{P%OW~{Iy&C6JCG$@Ad$!T@Hd?IDiB44WAGdHf+9qvO`6G0W@f_5sah|#75$I+ zUBZ!BK^gfj5nH7W4SjB)2&u1mAwe>ZvHQjZAQVWPCM*9-!k)s!l83ZwhsLd#Jkb1r`Hrl9)OAJI_CzEzE@Kfs=mHWc|Y-W zBDM!bFLBlWuCcNv?TB*D#~yON6QW#j1;bM9EK#=fwdIO_4ZmGd3r#);J@PMH+=-Y} zU2jMA5^n^$-QsNXJuhi@q5U?iwG)6d{MaUdeoS*$uw?n{aM%ekD=^3mU7cvDt8KYo zuNtd8G0g3$XGDi6>M^LII`(`vIeCxd$VdKVH$&Cuh?h9v?Em`B2nl(n1_n%;dW@}B zcuw@{>F8V)cGpt~o5kARfBC52^&z5rOyQpWm634&XrdZgt*c|nL&WKf$g>rfe5&|! zaOiqfh~kpKSnY@|)PlGOI7*~N;ufcI^YbD#9fM0g`#wvCGSp-MlvZ5&7oa11kxdy% z*!0xhj*jqG5GG;2sm5jhr5v5}$zJ*0gRY!Zvi}B(1m=1^A(t6y0D=W<<@qIPO#WEgPcjd*};rqM3RcA5DGc}?-u z{O&=yqWj(Q8z)+K348ycv?)&{Rg88!e}3-Cuof-TPyQl;gM_|>iZ;*A2Jy^AW_^y- z$V;?TGn6)9XpvJ9S*+H$a5c}9E4T|1BA-lYRk{vpPz6;as;EhN6E1zbiit^%DAT~) zhc*$Zzjh|6BZNZ@^8B8PkRSY7=y^vJKS{Mz6-*RMJgJJ?v5|I`QC1wZ=1P`y?;rZ# zr~A2BwDSwDnoU#=xx3pl579`7@p8p&j!J=Yj)#)6n>T0ZPraT<&wZ|)n{9^;PY{pc ziPi68a~8{}*W}y5__nt}Fgkev`+t}QIwBGoOu)(1JM`g{R=Jnw)g^v%CCyL44sLw* zq$|Wp%5KNL%;6~cZUWCl)`eSqJbr$iXvYGQ)r~*xzQIeimezTk;`P&W2*er6ivJLSj>{{~te1yXKn|I@D8$EXme?G+B)ioOLm3pmWXC!l=pt|u_oOy`I z!jf09ikvs1LfH#GG0`&}-5nEe-tmY0yde1p9h}}8OZdeWNLK4b!De05Bz3io|4@$a zLd%F)SR47uvcMtkv!K3yTaijo;KHK-xHhN~Z4U6x+S(N+CA~F>_S7oJP(0gm3c1w> zeopR7MgQIKM6#7<=h$TE0-tc8d|L1-OPE7|$p`spf5^;#Gnaz-P1UG1^P`$($m6cX z4SXsQ7J2%bN$XciHaMRKG)ahaWNA&;lYwD+x{(eeRwhulA~U ztN%KmP*K*?dz{*cjvVmXH|-Wq5l zmUHkh;4?wGujRB`ay}@cd~{-DT4iJ1f6eCOv+~jq?a7}V;b?VLE3U5Y&)RALt^D+s z*Eg$_d1}QWn-=*lzL3+6hvH=kkMu2{744I|{mguGQpxeLQ!gc800ZP{G*sSu^Zc|| zTSm{wBKECrGC$S1z5RQehYk*MuiCGESKPLYE93Q<{xED7#;ici zcyl=-P1!WZ`9(a_OGD%)1YnvNv*Cn?P61z@#NLzE;lJO<#n}<@NXUmhly+blMX%Zk zXd01oBK;{Py00aYMaE(xReH`;JJk5*^=^{8YQLEk;$^E>OtE>)c*zn>yx)leQC<@a zo3vJ3Urt#ZFge?+0xP?foVF^vZY?jxSuak?TmPFpMQt!nl}$n?zAw~*BQZ1=dk$yL z(M^(%V3dnCiV;cf3;y{Z&5WfeZH`k?tENs}-5<Qdz4l=qM)Kt+bLm1(^pEpmZ7g1@mTK! zV)_vvN7c_x$Eh|UEj*i!TVEcYIp`mL5u-Jb2-T28s`AAMvE(LnglvVk$ADTYbB3ckc97FGB zl}IToVdb{Pym~m=%QZdeOD9(Fyo63D2x84_ZNmeeRB#&HtN{u7BGGPoelyH@?Lv0L>sPacieH{z{!iXya(TK)B#9X4 zC<};t#6W86ug0>eXIe);U2IH~XR%5(4HEGhckd)>)mXB62WarffIzYtIJ!@MtVO=4 zZ?s$Oi`{5)?o=r#SGI|J6Ai(jfsTeiDuikmc#cbu~TA4Ciq8hEe%y2hJ*(jdQ z<}u`w<-e`x^w*m%KeGl}M)sU>=Qu68YtzO^ILXR4B+VoUa^2x;vjmp`GgmNlY}}W7 zR?_3>6saxvxG0~ums*4&nv9t&OK9Nb|DCy80In!JE6(ch$>NjPh-63BiGNQSh0lE! z{CG(Af{q3-!NKek>q>q@1f6{tdbm)1fmU4A< zE*uytO;@#ai(2GK^vx-}|0{vUjiZ=aX zoudPeT(8S4Vj|KeCmgK8;8Z=i$>H$^$zN&80a$7Qh$Hua(T5G<#-&v+46NSqY!v8o z-InH=RN*os;@N#ALJM&C;nLa}4t8vo`rG4^a_jb1mUh`W?}4_M?fw2xSo1xSf~|R3 z(_Ddh=NFdI$z6eL16Sry%?=FfY zrGMUU{poP6QnM*9E0e`42u5-sKft8J;;gwQBl15UG2Qg0Fn&ZKVplPvC6pX6$HzH2 zR3Z6%bO#+udlJGyuPd%~{J%#vECcow_a7F}cYePx$AG?TcX# zM_}C0xeb93+epqwWODS%)yBzB?dS5(IlQV%|5F7%p*}dDz(} zs{rWc^iDf3!xUTMB5H}iU@Hy(v1$5JM6zhhdW@04SzQKr#mFw#=TA0rkKD$hS>GxY z;r2cC^7=ouUwr?R_tf-($lC^Q+xWw?o)qi3WRgQbc`f=_+F!Gc&W->cj=56_)q#3K zZ{sCQtgw`Rk!ip6nB85#@sgWdDP-DcbNLR$ zFAa%y1zM$d>xx{E%%cR?+_jpbtqy@Gfvyi}q)03#%t0~3oAYKlZwEx9)xjn0!Pdrv zL(8vu{-qyBGEKFP{cIKj5&Q#IOVKMK;g=7x8&=JLM#;pxtu)z$j9Uz!o$Or-G-IR; zsSib)llc$Ub2^ApRrvKy2ZWp z>YXxdowESd8Mi=(3-O{zLRo)t#i_`?Dx-+!{EO6{Gt&tTzJs|i#e;T*k3P{ejyJ7| z)R#)s7`wCG2hiXW$iKHT$=H9VHv8GW)s2{Lc;Jf_tyzk(8k!C@=Y$lE#mLh4qNNqW zXbOQ>IlP!p=x4Li{Kj9Z81&~jHAggqK3e7yPIfC*$>d`srnxG* z#>F*#vuv3-e@=wJ)6V!h$ga>sEq!xLx3?~dKu)f+Qk4{ir&iR=XqafVbCqFK( zQ+qEotSMAOik@&vw-!zT@#d_}Mh!7TT z26wB9N^jo-P-fRy+V1N{1>&O$t_B7FgKxk!0@C_M-Of?-qQl!w9WTq|+}^eC8QJW0 zEWzxoJW{;#(aeSS*X%b{Jp_9CGVk|4wgG%=K!+;-(qU_`qN`pqfBmzCT=(Rc6MG4T zQS#ARZy5QO9C3;=MwhR1>X_zw-p>(y0AMp!HGH%ELHWq-(N7sgm{Ny4zusDwox33p z+}B>eAGeMbiknmkbJ)<$3thG5K2;KmkpgTxi{B=joR4lR&SCOxi~Dv>J+#JMXjyXX zw6+{b}{Vum4HWkWMYV|(WotV5?|Krwp%{$}IYNH$7obU2a zw+qPCXN>X^pN?1l4HIYT8*BNXnd)EWF&wqvzuXAcUZ3`(vrc7ANgEs64b3mip_+Ke z>cjlqVbqLXfvw_)nCA9c7CGYv0K;Z@+ZQ+{={d8p!*vP1jbxQ?eC5HMtUd*&i&{<3 z4sS)MMhmON>-@;#uzz-%_cqUFl2gE7 zz37bu)jTtXE=Qh{?6BDDquH(Vn^qBd?=ID8{|BAEe<`nxJShyP)lDt(logtJl;h0e zA1rt&M(o*hHWnTRvt;HNgU3vnHq1oe;n9rrNBWLCOWdSbpDPnOQ%!Rl#6h2r*&#C9 z9 zfAEV3OXia%MOBnGry>YIXvw0K9$MO`dB3XchS(;w==2{mUeEq#P))i1rk{BC%vyDQ z`A{0zRqH`oVss3r6PNtA<;@Eipvt~$Rls)&8%p5lTg-xNG+CFOtY_dB!Fq33f{^Z`1;S7fSpL6lr&6#2!vMV zcAd;4`W6FCzIk$bJ zcfF66i8($Z&5AR)0_cNiH~PD}FI%~T;w2IC?%1wPH?f|b+^cn))?Mb`F+tyNJ>af- zyXlaVUd1Xx8)sHst|uV;xtQp0adc^VTvj6CkoatLOlOKtFNUL#(>_~swWmylfhFeN zRmZF`T`ygWTLaN&5Nn1s1_OI6^Ym^bj%DA8#J@O zW$hU$$b3)t9;AAi@=HIW^9Pp(Z^C`&(%GO?ny^UIPcuffc{GkiBQD!!PSnX1Kaszk z);n^7`Q_5{yQfCiT@QvOh3^g=mlrXyL?>RVvSvqI`;p5L=E?q|+8<0>=^%RjmHia# zT3nI1!=~BE$KHO{+kspqT(0qkC*3Y|h2KtDI$M9h&{Qf~YBzi3Y2zyWN27Ee`PJ33 zppG_ecKg7P`bnh8?byEP_IV%fCaySvCgCLK#<7XY(PlkX(-GZVp0`O{EHGNu zu$bF}s&Pzk0~6y6M%nM{X44Hc;1wJ3fMUVk!nPp%?34>xi*FidGU>b$lJ8aQnf6UG$tfi_c^p0H&z`FuhZg zk`<3S`N1+0+06ELuD|x6qSWL$TP$B%m=etsV}_Lw7+8qEDFosa-L$Jq|G}u_M0(SO zJ1+*MwDQM?H8_c^4_PwSaB^}pk1FU-7(L9$<)CY@yaRb9$c4J1 zW0p)uyE4kA-;x7;E`x$ZH6sxR+rPV6IkeOnKi!dGvfFy#{==K#e?PR(wl)wowA%XB z#x4-cQRfagCBsruZ)#~Ma&8u}!gt}El57>+4X>H0%50Z*D?H$bYo8D!Nhhk%pVgyn-0`iGbh$!bOw62fWpp7fOlnzR8)_R2mwuYhn^%F--yjuaL!P^#mQ=*L{K zT+5p)b*n2_-R3sJHn{UJi1)I`D4qzHEz<=Cw%VR`@1V-EEHwCJkIn*M+bGd`SA2AB z%|TJ0p22H=|Dc#)Rx_D;yTgec{1)=z;BfUdsX%6alk4iS%pti21!2bCDOYuDtZgqf zuV}h%$@hyfS}e7p^cpJs%Un+M$2+VKX_X}xnCpQC0*PNRxpJyeQ-4l3l(Z*CtJQ?9 z%GEg>2EJ28FS8`Pk~LlI%H?#|A*d&b=)HT{NqXi-u{Q6U+qU8W3R?x-z_j@}aZ^)5 zWkic8!Z1{}%9S=PpXGyD$%*KDMTnmUYr!K@?X~$C*pk>xcF*bn0Q>os1oZTCDim(B zU0RlR75gW)f}F?zA&=~T{4`BMhUKa&gL13~(A)0g^166HLqD5|AXyLRW&n&hODK7` zR&fqkFiJYiH0s)Ltt{gszt{WG?L}8G3hDh5Z_vk;`qTZ-`rk4O^y+Aj2`MR<9%OpO z{fMBGCwgkY1*fvj&7E3WVZRg-laE31K$kX7e`ot@MP9Z#T}Y>)=JTtCI$^<^lUF~6 zT{2y@+%{b>=GinB-&7HqZY!!QO1FBJ>^!2SH0`B(c#jnDP)#FK>F4S^;}Skx8`CIt zxP;|6^+=pcHOsnLvRbLD)^>sk`+lp;CFG6RJOdt*ea7gF0(9$Zm_65GB{i zB4!00U6$yl1rgcu@oe(e-+KPj!$8_ze&cru$Y=uLW@MaI1)F!@dbYg%xtiT*_Y zPHS&oFNWIC&dJr>{tZzc8@dqTo?-I%cu)IU`yUe#20B8T@)3H5uc{({WV$J7Dgj>M zu??P@Ms~`oO+ioVPBt2LZ8y(2>@cYrOO;;TLUVDqo@NP!S5~(0H-4~_`x)v%RtB?q zO0vpx;MM6{+k9_Fb^=P@71DiuI-81cf8+hAq`@_)C8m~AWUymOhT)dA#gn+4Zfj9$ zAq`<6_wkMs2hR^^z$g%N2`F9t>A5i1X|++7JMa#xQ~P{I5gID>I%;zHJw#1IioY;7 z#m+|AA^Vwj5pD{2O#VtPG^Pq1ixtKVS-*=h&C_Q0 z?9uPqqY^S?B6ofqCmk1Kz$s4Bqe#@h+I4?l|Bi1g6aCU*>1t%$_bpw|W-X~-r!KSW zRh5`2qadFVkBttGnS!jEimVLz(SsB#InBAbBj8H<@?y)W-j)wD>PxN#UXaWoDISiC zs>7sL+i&Np>4f^_^a_g^8#k>gS5yThC5I|J7H0&~;I!Xi8Owl{(t~uXY{8zp$?qT9 z>$qu#&2Da|t&Z-Pyc16+Z!IqY-62FC5W8dSjSRd;ydZuUnR-c9eZ}he! z!oY4h_m==OlL$f=z}z@uXu@ww8Y2Ejw7+<4kG$cn9jj@istTJ1FYH-Knjm0|-p!6! z#YR})1@zoL89jwYv*6`t66K%ZlE>bJ$1dFI<}`jPBCiT^fDV7(Ug!>TVLF8!3u)}b zsq~}2GQ9-+h`pjp8`_yS@51@FCen8Zi#0SQfx+dz?~&L4(o|2DI8Cqcwd+r5_#Bm^TW1p~ux|4% zx@v&vw4Q3Mv}8xTfagE_0Xr{9oep86=HUx*I}x)S_-aJt7TChvK# z0xT~>GbQ}qjh99rBo1yKquQK6)Dn7nn&3W3wuPb$;}0`Q-fRxh%X1Sty3)*))gq^R zg$`{hNeK?L95uT#Tn{q7%e_#L`1@+;()3rKGtaj!lIO!FvaJQ>sebwW+7T&VT-Tq? zGW5zB2qk@!otj1}ap!HZ6UxN_}pa;%7diO_Mi7)r*kA0tHeonb+_L$Vmc;)niZ4 z^6$8%$OofK52aPO=z*YB`aE-PyO82=i3%~GK~qk&@=lghJi*z*OMb&_sD2T~Agj_I zQXm2#>RD2xV7HvtF2MZUZ6JS~|MDr(3p?*g(R}P%BC)H6j5n2|3Tmjg0$l7OHf6<1 zv_QC^O4-U*A{ubm(|^o|4>$T$(~528jZDRDMW}E0LrJq;EeuM5I$;i4hfOO!I_>3K z3e3JF*0Nktt;BHaK^$PQ{O#$KkbhJK^+L2=+s2`e?-qjeQx`R_oC5&>pWh{}<51;A z>7w2Xk}=zT)4=GamOV_3#V)VgqWkHh{YR_@>z7m@yAjG*re5ObJGrADXwjclHcIU0 zH^_djLLiGgU|2&#J1ZHX5Bu=bNJs|hHg2H|^re6Oz+$|}tbTIOY$5m*cI3JD?g!mHKj^r#=|0w}13Nt|HH-l!;;2B&)?cacgSpIGBlHnHb zF}8KN9xeq3p_!adefX*lKWXrN>EAfmJa(8yq?`X;U|&Y4!>$ZfZ92hGq?iXU6c;Rf zaXNw83`Sc}Rw2t09oZQnOwLCQSccxR~0Su|YLqZE`=>Zo3?=zT%5uj-Y%z~qZF z;aeX&8*ac_RJGv|Ni2aDq^ZLzt-zurH&5F!%{;KbjvLAW=eo`o$F(>Gph(^$^A&oQ$*Cg3li$19r*6XJoKK9%xP<9wLNzD(Bw?`+!Jf(gE=Wvz98wabKD=_7|D*g zAhC(Xgh;fr;x{fxl+3{3rQ6k@5FmYru&D*jg#Q7)f$B|)}7BB%!yKK|gGIO{; z2Mxey$ftnV7MgGK={eibhSYSxe{@8L* z7}Sd}jcqQ&uwx@9myi5#8JlWd8COp6aNg2j@MLGJE%FFx)~2-ECe?`V0kUX)6M2(gTI#6-oseI|w&nV~qoV_m*nFcl)dj1W?!goq#D>_Tb+2gRSFDBDDZX5)V;- zur1AV&!nUw?uq!P7bMrdkBDZL5ZIHC4A(m?X7PCdA=g}olEx0MOrj=B=Qh!;(+Ic* zZ2shMTn2Tt6|b~Sx#U4-;0swiP;G^GoV5Z=tZBp7CcbjqKMPoRaZqHQ;pty+UT6u^ zzaY6&mJZ^rt3_imY%es>zo($o1HK;!0-P<#o%a^@>wLaV(iWnTIEQH$@a~sQ`?KRs z$Tjya_{J6&G>3BOH=fz|R_k&y6eRAh1014#Fjj*%iuK<-=bnz^LuH=8mcApHhRdK| z9fV3a2xZcVCVY4yJYkpse8~<9YGGQuMxZ~1cHmke8%XF+&{zB(HWEv@JX?j|IAcB8 zI^H_ngy?5#gte}t^6-o4&}-5bAoXwGfgAgRQH9#$m#JG9RrwMz&~p$U8st3AG`F_| zw|tAAK7x`Q0xjl&#?Cag^Uy|oLtsOOX+Xgt;!N5Mh!cBE4&Ms6Aj!3mmh{>9j`f39 zs^RE4@PFvH`tj?tzz0uTKhp74x1t%Dj(u^0*bM1@3<&MGhl92Qx!l#jwO)`gHNcC; z;aUW8C~q;ybGr7kBw=o<6*PRf83_Dqa|QeP6XAejfPlUr$!j?v96_>e1K?2HeS{?Z zz{a8+*d^2#I5jXq3CjLu914a;*wYmiX#piRh>bB>Y@^Y*2Bq@&8PJq&#AXqdh>-_% zy^!4n`d_RCt|-l4kN~pK@e>v-$_SPDOc;I2dH##xa0Oif=CnQ6IHBk&j zXp4?Rg4W&nH6pfXH? z#h}f69<&DQ#5a2exzr@B@lOyox);sn9!Q>Z#r{0p)LlfiVx&mFdBFjceZTMQo2@&3 z7^sN_s5_HpaOv=@$uAO+Y-eci@$8eTzl3-W+<9&-Yz6lHKpN5CURu_#?w7XF0Ccfj zX_kVc;T?x9CN-PXOyJYs;Oe8>*EN8>WgFz31G3R8Tq8tM!pEai49Xijhsh9x=(pyV zc@=J!4b_(+r+h)<2Kx?-FF?D{uWJFb^d9(bU>)>30SOj-u-^62Kw-z)4dB>x@VY3_ z-wTq$W+e~`0j&M2mjUqe{XSn@NkiaD+i9Ie^`T!t3mK78I(5_U2t{@KiGLeLT`2~YH@D7b3wAlH`C(Oi-xvKwDyDljD~?K3C!p~ zCeky$t^ITG9_084Va!OA4oZ~iXIvxPm(BEN+9PI8EHsa=W1-dU_}bW0Tm}<+svI7m zH&6f3vUI=qc86s~t5V%K&M?#rlQ&L*Yh#pm`^ZOn`t~V7?fKUJnPdYWAmbL{fxBlX zWn+^^TS6Q4(4bLB#p%Oh0&Con9c0ddu(-2-LE>0ueEq;zvcc08Q0}eG=z#M@K&Mv| z%pRk)(KowBeA#yF4nZ9PE#TU`c|l#^%H9S}59XC#`ZKwDuo%7ti2G6CG&)bTmI4~? zoiE~(-Y047CNJ#ONn(qP=9J%M6KL?i^RRo%jt$06l)#LCpuRwqd^qy_*bhJBsZ&xL zj47}<@jI?61aY+hOzi-iox-`<0+XYS8+;Ki(n)x-HWEyW6T~DUeVST#*%mZtvIqAd zi_*;mK0IT_LH8OI%~g6q62iNO1@Co&(6*D`2%82x-(fJogBd?F9vTyY3oj*%K~EQd)PrRtZnCv0c^Bqvy32vykCnJ-H@>gDsqe z1`WD$S*NDiH-K{^CpKe+K%=l^-cHQ~i9Nc5O`GtMM&3Oo==n@pP{#JI)K{M%vF1n# z)Ohw!oS9W3o)3B>bL<7pZfmF&ZdM&olm8w!fdLw9Z4?UdNh-GBfMfgsLwy!#rU*j0 zW8`SQd5ISip2Q#d46Xj-XlTu$A+4me25AA50sxAm*F5n-ObWtluHH8AqG2W#Qd3cUvg^@)axmMwQTRtT_i?h!N(cfqJjbW zYt&qjbV(L%jA#FKEsg8O_?cOQX7UKvDg*a--z@$Th3@}&%^y;PttP-u7Y`^`6zJqE z4k&lQuy&jx^v-y8J9ZX=!RwK35GWJ-i}-fW;i`TIWeE@n|5QLXRtPkYPv4-g?8h7BN(Sq)xS^Z=01>)Yh!;*r{RihjjA_=vRKRC>l^XcYDt~(kC~t(3%cNS?u`Q=;|S=HSfHN0GY;Fo}207A2@Dp zDC^`wF#{Pg-L?+<)k7uo*=AD<>7c@C9CD$xt924k!l@z5{fuRG)Wnh>mATR|e&A>37fnkNY;bI&8ZU%-F1_q$u94@Xr28PKD4DAdIX$%Y# z7#K>y%GSGCTyQsEtsnz55U6Z6KmTP%!wvdcQ~3BA85jzf7^aJgG%&HW0W~r*Ol4qb z6jyFiG^&%+sgcn#5msqnV6d}F42|xHP3{YcYK~59lTox+)%N!bZ7e8XnO8g`J!gWv zikqWHQE|n*!txoxk#)+NeyZAm&Ys1d{#CZlSvHPon))FMYM!&%+1A;b?1>Lvs-n0| zL+wCj+&Xjp6>e6C%X0RmMK3i}UgcytPeF2tjsBtBq&?nt``j${IGJp>HD0Eqv|LSb zd$ix~#IOT_E=OI>PTJ`m)|NbIsj*R8WtooV_N4G#fi8#LEza2KUQiP{FT;LBiv5_G z>QV`@<*JGs&D4(A=$_ROyCutUTbARz65nbQ{q;u5+m-l_$#7m);JKzMxH~FzySe5b zQ;p+pR;OJpwri;@mJ+Y1TNRbiS?!z;3`qu$k|4ie1_sU3Ev0AFBu;fOmi+v^myiFc zx8+6-YgzMu|NdEWRsa6o%+0-gCZE%{pMU@UtxUM_?cd)&dbxl8{fV}}@ax}sdA{uJ znr7v}ci-LE3pA54$=lt9p@UV{1IXbl@Q5sCVBi)8VMc~ob0mO*>pWc?LpZJ{Cjddx zw}iy63CZaU%zS?S`uXzl_Ih~+)7z(?w^uOGm=Vu#L|BB2lb5@{qo+%ZtG30B zp~;hiU5-jfNE{8me972o^QPjW&ngX@CjAUzZFN1Wy7ZFKCWm!%Y9cFLQ$x2lEt+KH zvAHYDH#fG{dGRc(BT2n#zPh=xv9@d)7cQ6^m>8KEwtkd6b4GWT?%D*K?Ac<`*46A9 z=P#bTdGzX8*%M3*6}Oajzd2&81a!G+iEBiObAE1aYF-J0MzW@Yk%57Uf>&a8X_7*4 zNor6swX?12r&sy85}Sb4q9e0O1lc AyZ`_I literal 0 HcmV?d00001 diff --git a/dependency-check-ant/images/contact-new.png b/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/dependency-check-ant/images/drive-harddisk.png b/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/dependency-check-ant/images/icon_error_sml.gif b/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/dependency-check-ant/images/icon_help_sml.gif b/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/dependency-check-ant/images/icon_info_sml.gif b/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/dependency-check-ant/images/icon_warning_sml.gif b/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/dependency-check-ant/images/logos/build-by-maven-white.png b/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/dependency-check-ant/images/logos/maven-feather.png b/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/dependency-check-ant/images/network-server.png b/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/dependency-check-ant/images/profiles/pre-release.png b/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/dependency-check-ant/images/profiles/retired.png b/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/dependency-check-ant/images/profiles/sandbox.png b/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/dependency-check-ant/img/glyphicons-halflings.png b/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/dependency-check-ant/index.html b/dependency-check-ant/index.html new file mode 100644 index 000000000..bcbc34d9c --- /dev/null +++ b/dependency-check-ant/index.html @@ -0,0 +1,192 @@ + + + + + + + + + dependency-check-ant - About + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
+ + + + + +
+
+ +
+ + +
+ +
+

About dependency-check-ant

+

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/dependency-check-ant/installation.html b/dependency-check-ant/installation.html new file mode 100644 index 000000000..140222205 --- /dev/null +++ b/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.1-SNAPSHOT.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/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js b/dependency-check-ant/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/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/dependency-check-ant/plugin-updates-report.html b/dependency-check-ant/plugin-updates-report.html new file mode 100644 index 000000000..66a1f945a --- /dev/null +++ b/dependency-check-ant/plugin-updates-report.html @@ -0,0 +1,869 @@ + + + + + + + + + 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 available7
    # 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 update7
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version0
    +
    +

    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.7
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-gpg-plugin1.4
    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.1
    org.apache.maven.pluginsmaven-site-plugin3.3
    org.apache.maven.pluginsmaven-surefire-plugin2.142.14.12.15
    org.codehaus.mojocobertura-maven-plugin2.5.2
    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
    +
    +

    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 No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    +
    +

    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-gpg-plugin

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

    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
    +
    +

    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 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 No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-shade-plugin
    Current Version2.1
    +
    +

    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.4jar
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

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

    + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    +
    +

    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
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-ant/pmd.html b/dependency-check-ant/pmd.html new file mode 100644 index 000000000..9e4ec6d28 --- /dev/null +++ b/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/dependency-check-ant/project-info.html b/dependency-check-ant/project-info.html new file mode 100644 index 000000000..ea8ac7d91 --- /dev/null +++ b/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/dependency-check-ant/project-reports.html b/dependency-check-ant/project-reports.html new file mode 100644 index 000000000..f67571c9b --- /dev/null +++ b/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/dependency-check-ant/project-summary.html b/dependency-check-ant/project-summary.html new file mode 100644 index 000000000..4bded51eb --- /dev/null +++ b/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
    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.1
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-ant/surefire-report.html b/dependency-check-ant/surefire-report.html new file mode 100644 index 000000000..05b74a244 --- /dev/null +++ b/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%9.995

    +

    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%9.995

    +

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

    +
    +

    org.owasp.dependencycheck.taskdefs

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DependencyCheckTaskTest4000100%9.995

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    DependencyCheckTaskTest

    + + + + + + + + + + + + + + + + +
    testGetFailBuildOnCVSS0.461
    testAddDirSet2.457
    testAddFileSet6.597
    testAddFileList0.48

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-ant/taglist.html b/dependency-check-ant/taglist.html new file mode 100644 index 000000000..097af69aa --- /dev/null +++ b/dependency-check-ant/taglist.html @@ -0,0 +1,275 @@ + + + + + + + + + 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 Work1todo, FIXME
    +

    Each tag is detailed below:

    +
    +

    Todo Work

    +

    Number of occurrences found in the code: 1

    + + + + + + +
    org.owasp.dependencycheck.taskdefs.DependencyCheckTaskLine
    add code to disable fine grained log file. Logger logger = LogManager.getLogManager().getLogger(""); for (Handler h : logger.getHandlers()) { if (h.getFormatter(). h.toString()); }358
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-ant/usage.html b/dependency-check-ant/usage.html new file mode 100644 index 000000000..6cc0aa244 --- /dev/null +++ b/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/dependency-check-ant/xref-test/allclasses-frame.html b/dependency-check-ant/xref-test/allclasses-frame.html new file mode 100644 index 000000000..c7fadcf68 --- /dev/null +++ b/dependency-check-ant/xref-test/allclasses-frame.html @@ -0,0 +1,20 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-ant/xref-test/index.html b/dependency-check-ant/xref-test/index.html new file mode 100644 index 000000000..1dd999b8a --- /dev/null +++ b/dependency-check-ant/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-ant 1.0.1 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/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html new file mode 100644 index 000000000..08d4d5b78 --- /dev/null +++ b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/DependencyCheckTaskTest.html @@ -0,0 +1,135 @@ + + + + +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  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class DependencyCheckTaskTest extends BuildFileTest {
    +35  
    +36      public DependencyCheckTaskTest() {
    +37      }
    +38  
    +39      @BeforeClass
    +40      public static void setUpClass() {
    +41      }
    +42  
    +43      @AfterClass
    +44      public static void tearDownClass() {
    +45      }
    +46  
    +47      @Before
    +48      @Override
    +49      public void setUp() {
    +50          final String buildFile = this.getClass().getClassLoader().getResource("build.xml").getPath();
    +51          configureProject(buildFile);
    +52      }
    +53  
    +54      @After
    +55      @Override
    +56      public void tearDown() {
    +57          //no cleanup...
    +58          //executeTarget("cleanup");
    +59      }
    +60  
    +61      /**
    +62       * Test of addFileSet method, of class DependencyCheckTask.
    +63       */
    +64      @Test
    +65      public void testAddFileSet() throws Exception {
    +66          File report = new File("target/DependencyCheck-Report.html");
    +67          if (report.exists()) {
    +68              if (!report.delete()) {
    +69                  throw new Exception("Unable to delete 'target/DependencyCheck-Report.html' prior to test.");
    +70              }
    +71          }
    +72          executeTarget("test.fileset");
    +73  
    +74          assertTrue("DependencyCheck report was not generated", report.exists());
    +75  
    +76      }
    +77  
    +78      /**
    +79       * Test of addFileList method, of class DependencyCheckTask.
    +80       *
    +81       * @throws Exception
    +82       */
    +83      @Test
    +84      public void testAddFileList() throws Exception {
    +85          File report = new File("target/DependencyCheck-Report.xml");
    +86          if (report.exists()) {
    +87              if (!report.delete()) {
    +88                  throw new Exception("Unable to delete 'target/DependencyCheck-Report.xml' prior to test.");
    +89              }
    +90          }
    +91          executeTarget("test.filelist");
    +92  
    +93          assertTrue("DependencyCheck report was not generated", report.exists());
    +94      }
    +95  
    +96      /**
    +97       * Test of addDirSet method, of class DependencyCheckTask.
    +98       *
    +99       * @throws Exception
    +100      */
    +101     @Test
    +102     public void testAddDirSet() throws Exception {
    +103         File report = new File("target/DependencyCheck-Vulnerability.html");
    +104         if (report.exists()) {
    +105             if (!report.delete()) {
    +106                 throw new Exception("Unable to delete 'target/DependencyCheck-Vulnerability.html' prior to test.");
    +107             }
    +108         }
    +109         executeTarget("test.dirset");
    +110         assertTrue("DependencyCheck report was not generated", report.exists());
    +111     }
    +112 
    +113     /**
    +114      * Test of getFailBuildOnCVSS method, of class DependencyCheckTask.
    +115      */
    +116     @Test
    +117     public void testGetFailBuildOnCVSS() {
    +118         expectBuildException("failCVSS", "asdfasdfscore");
    +119         System.out.println(this.getOutput());
    +120     }
    +121 }
    +
    +
    + + diff --git a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..2cbbcc8cf --- /dev/null +++ b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-ant 1.0.1 Reference Package org.owasp.dependencycheck.taskdefs + + + + +

    + org.owasp.dependencycheck.taskdefs +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..84addb8b8 --- /dev/null +++ b/dependency-check-ant/xref-test/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-ant 1.0.1 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/dependency-check-ant/xref-test/overview-frame.html b/dependency-check-ant/xref-test/overview-frame.html new file mode 100644 index 000000000..e602f3fb2 --- /dev/null +++ b/dependency-check-ant/xref-test/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + dependency-check-ant 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-ant/xref-test/overview-summary.html b/dependency-check-ant/xref-test/overview-summary.html new file mode 100644 index 000000000..9e48b7f16 --- /dev/null +++ b/dependency-check-ant/xref-test/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + dependency-check-ant 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-ant 1.0.1 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.taskdefs +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-ant/xref-test/stylesheet.css b/dependency-check-ant/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-ant/xref/allclasses-frame.html b/dependency-check-ant/xref/allclasses-frame.html new file mode 100644 index 000000000..c51ee72fc --- /dev/null +++ b/dependency-check-ant/xref/allclasses-frame.html @@ -0,0 +1,23 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-ant/xref/index.html b/dependency-check-ant/xref/index.html new file mode 100644 index 000000000..1dd999b8a --- /dev/null +++ b/dependency-check-ant/xref/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-ant 1.0.1 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/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html new file mode 100644 index 000000000..3215c8db0 --- /dev/null +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/DependencyCheckTask.html @@ -0,0 +1,539 @@ + + + + +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.LogManager;
    +27  import java.util.logging.Logger;
    +28  import org.apache.tools.ant.BuildException;
    +29  import org.apache.tools.ant.Task;
    +30  import org.apache.tools.ant.types.EnumeratedAttribute;
    +31  import org.apache.tools.ant.types.Reference;
    +32  import org.apache.tools.ant.types.Resource;
    +33  import org.apache.tools.ant.types.ResourceCollection;
    +34  import org.apache.tools.ant.types.resources.FileProvider;
    +35  import org.apache.tools.ant.types.resources.Resources;
    +36  import org.owasp.dependencycheck.Engine;
    +37  import org.owasp.dependencycheck.dependency.Dependency;
    +38  import org.owasp.dependencycheck.dependency.Vulnerability;
    +39  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +40  import org.owasp.dependencycheck.reporting.ReportGenerator.Format;
    +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 Connection Timeout.
    +328      */
    +329     private String connectionTimeout;
    +330 
    +331     /**
    +332      * Get the value of connectionTimeout.
    +333      *
    +334      * @return the value of connectionTimeout
    +335      */
    +336     public String getConnectionTimeout() {
    +337         return connectionTimeout;
    +338     }
    +339 
    +340     /**
    +341      * Set the value of connectionTimeout.
    +342      *
    +343      * @param connectionTimeout new value of connectionTimeout
    +344      */
    +345     public void setConnectionTimeout(String connectionTimeout) {
    +346         this.connectionTimeout = connectionTimeout;
    +347     }
    +348 
    +349     /**
    +350      * Configures the logger for use by the application.
    +351      */
    +352     private static void prepareLogger() {
    +353         InputStream in = null;
    +354         try {
    +355             in = DependencyCheckTask.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +356             LogManager.getLogManager().reset();
    +357             LogManager.getLogManager().readConfiguration(in);
    +358             //TODO add code to disable fine grained log file.
    +359 //            Logger logger = LogManager.getLogManager().getLogger("");
    +360 //            for (Handler h : logger.getHandlers()) {
    +361 //                if (h.getFormatter(). h.toString());
    +362 //            }
    +363         } catch (IOException ex) {
    +364             System.err.println(ex.toString());
    +365             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    +366         } catch (SecurityException ex) {
    +367             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    +368         } finally {
    +369             if (in != null) {
    +370                 try {
    +371                     in.close();
    +372                 } catch (Exception ex) {
    +373                     //noinspection UnusedAssignment
    +374                     in = null;
    +375                 }
    +376             }
    +377         }
    +378     }
    +379 
    +380     @Override
    +381     public void execute() throws BuildException {
    +382         prepareLogger();
    +383 
    +384         dealWithReferences();
    +385         validateConfiguration();
    +386         populateSettings();
    +387 
    +388         final Engine engine = new Engine();
    +389         for (Resource resource : path) {
    +390             final FileProvider provider = resource.as(FileProvider.class);
    +391             if (provider != null) {
    +392                 final File file = provider.getFile();
    +393                 if (file != null && file.exists()) {
    +394                     engine.scan(file);
    +395                 }
    +396             }
    +397         }
    +398         try {
    +399             engine.analyzeDependencies();
    +400             final ReportGenerator reporter = new ReportGenerator(applicationName, engine.getDependencies(), engine.getAnalyzers());
    +401             reporter.generateReports(reportOutputDirectory, reportFormat);
    +402 
    +403             if (this.failBuildOnCVSS <= 10) {
    +404                 checkForFailure(engine.getDependencies());
    +405             }
    +406         } catch (IOException ex) {
    +407             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +408             throw new BuildException("Unable to generate dependency-check report", ex);
    +409         } catch (Exception ex) {
    +410             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.SEVERE, null, ex);
    +411             throw new BuildException("An exception occured; unable to continue task", ex);
    +412         }
    +413     }
    +414 
    +415     /**
    +416      * Validate the configuration to ensure the parameters have been properly
    +417      * configured/initialized.
    +418      *
    +419      * @throws BuildException if the task was not configured correctly.
    +420      */
    +421     private void validateConfiguration() throws BuildException {
    +422         if (path == null) {
    +423             throw new BuildException("No project dependencies have been defined to analyze.");
    +424         }
    +425         if (failBuildOnCVSS < 0 || failBuildOnCVSS > 11) {
    +426             throw new BuildException("Invalid configuration, failBuildOnCVSS must be between 0 and 11.");
    +427         }
    +428     }
    +429 
    +430     /**
    +431      * Takes the properties supplied and updates the dependency-check settings.
    +432      * Additionally, this sets the system properties required to change the
    +433      * proxy url, port, and connection timeout.
    +434      */
    +435     private void populateSettings() {
    +436         InputStream taskProperties = null;
    +437         try {
    +438             taskProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +439             Settings.mergeProperties(taskProperties);
    +440         } catch (IOException ex) {
    +441             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    +442             Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINE, null, ex);
    +443         } finally {
    +444             if (taskProperties != null) {
    +445                 try {
    +446                     taskProperties.close();
    +447                 } catch (IOException ex) {
    +448                     Logger.getLogger(DependencyCheckTask.class.getName()).log(Level.FINEST, null, ex);
    +449                 }
    +450             }
    +451         }
    +452         if (dataDirectory != null) {
    +453             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDirectory);
    +454         } else {
    +455             final File jarPath = new File(DependencyCheckTask.class.getProtectionDomain().getCodeSource().getLocation().getPath());
    +456             final File base = jarPath.getParentFile();
    +457             final String sub = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +458             final File dataDir = new File(base, sub);
    +459             Settings.setString(Settings.KEYS.DATA_DIRECTORY, dataDir.getAbsolutePath());
    +460         }
    +461 
    +462         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +463 
    +464         if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +465             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +466         }
    +467         if (proxyPort != null && !proxyPort.isEmpty()) {
    +468             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +469         }
    +470         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +471             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +472         }
    +473     }
    +474 
    +475     /**
    +476      * Checks to see if a vulnerability has been identified with a CVSS score
    +477      * that is above the threshold set in the configuration.
    +478      *
    +479      * @param dependencies the list of dependency objects
    +480      * @throws BuildException thrown if a CVSS score is found that is higher
    +481      * then the threshold set
    +482      */
    +483     private void checkForFailure(List<Dependency> dependencies) throws BuildException {
    +484         final StringBuilder ids = new StringBuilder();
    +485         for (Dependency d : dependencies) {
    +486             for (Vulnerability v : d.getVulnerabilities()) {
    +487                 if (v.getCvssScore() >= failBuildOnCVSS) {
    +488                     if (ids.length() == 0) {
    +489                         ids.append(v.getName());
    +490                     } else {
    +491                         ids.append(", ").append(v.getName());
    +492                     }
    +493                 }
    +494             }
    +495         }
    +496         if (ids.length() > 0) {
    +497             final String msg = String.format("%n%nDependency-Check Failure:%n"
    +498                     + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +499                     + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    +500             throw new BuildException(msg);
    +501         }
    +502     }
    +503 
    +504     /**
    +505      * An enumeration of supported report formats: "ALL", "HTML", "XML", "VULN",
    +506      * etc..
    +507      */
    +508     public static class ReportFormats extends EnumeratedAttribute {
    +509 
    +510         /**
    +511          * Returns the list of values for the report format.
    +512          *
    +513          * @return the list of values for the report format
    +514          */
    +515         public String[] getValues() {
    +516             int i = 0;
    +517             final Format[] formats = Format.values();
    +518             final String[] values = new String[formats.length];
    +519             for (Format format : formats) {
    +520                 values[i++] = format.name();
    +521             }
    +522             return values;
    +523         }
    +524     }
    +525 }
    +
    +
    + + diff --git a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html new file mode 100644 index 000000000..08ae85108 --- /dev/null +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-ant 1.0.1 Reference Package org.owasp.dependencycheck.taskdefs + + + + +

    + org.owasp.dependencycheck.taskdefs +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html new file mode 100644 index 000000000..d95d79cc1 --- /dev/null +++ b/dependency-check-ant/xref/org/owasp/dependencycheck/taskdefs/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-ant 1.0.1 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/dependency-check-ant/xref/overview-frame.html b/dependency-check-ant/xref/overview-frame.html new file mode 100644 index 000000000..e602f3fb2 --- /dev/null +++ b/dependency-check-ant/xref/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + dependency-check-ant 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-ant/xref/overview-summary.html b/dependency-check-ant/xref/overview-summary.html new file mode 100644 index 000000000..9e48b7f16 --- /dev/null +++ b/dependency-check-ant/xref/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + dependency-check-ant 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-ant 1.0.1 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.taskdefs +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-ant/xref/stylesheet.css b/dependency-check-ant/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-cli/apidocs/allclasses-frame.html b/dependency-check-cli/apidocs/allclasses-frame.html new file mode 100644 index 000000000..0ad5f64e2 --- /dev/null +++ b/dependency-check-cli/apidocs/allclasses-frame.html @@ -0,0 +1,36 @@ + + + + + + + +All Classes (dependency-check-cli 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    App +
    +CliParser +
    +CliParser.ArgumentName +
    +
    + + + diff --git a/dependency-check-cli/apidocs/allclasses-noframe.html b/dependency-check-cli/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..6b3f008e6 --- /dev/null +++ b/dependency-check-cli/apidocs/allclasses-noframe.html @@ -0,0 +1,36 @@ + + + + + + + +All Classes (dependency-check-cli 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    App +
    +CliParser +
    +CliParser.ArgumentName +
    +
    + + + diff --git a/dependency-check-cli/apidocs/constant-values.html b/dependency-check-cli/apidocs/constant-values.html new file mode 100644 index 000000000..1ad4f73af --- /dev/null +++ b/dependency-check-cli/apidocs/constant-values.html @@ -0,0 +1,313 @@ + + + + + + + +Constant Field Values (dependency-check-cli 1.0.1 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_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 StringSCAN"scan"
    +public static final StringSCAN_SHORT"s"
    +public static final StringVERSION"version"
    +public static final StringVERSION_SHORT"v"
    + +

    + +

    +


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

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-cli/apidocs/help-doc.html b/dependency-check-cli/apidocs/help-doc.html new file mode 100644 index 000000000..4a53c2cf8 --- /dev/null +++ b/dependency-check-cli/apidocs/help-doc.html @@ -0,0 +1,224 @@ + + + + + + + +API Help (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/index-all.html b/dependency-check-cli/apidocs/index-all.html new file mode 100644 index 000000000..e98f9ccb1 --- /dev/null +++ b/dependency-check-cli/apidocs/index-all.html @@ -0,0 +1,354 @@ + + + + + + + +Index (dependency-check-cli 1.0.1 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 proxy url. +
    CONNECTION_TIMEOUT_SHORT - +Static variable in class org.owasp.dependencycheck.cli.CliParser.ArgumentName +
    The short CLI argument name indicating the proxy url. +
    +
    +

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

    +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_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. +
    +
    +

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

    +V

    +
    +
    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/dependency-check-cli/apidocs/index.html b/dependency-check-cli/apidocs/index.html new file mode 100644 index 000000000..aca8c94b3 --- /dev/null +++ b/dependency-check-cli/apidocs/index.html @@ -0,0 +1,40 @@ + + + + + + + +dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html new file mode 100644 index 000000000..73baf39cd --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/App.html @@ -0,0 +1,284 @@ + + + + + + + +App (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html new file mode 100644 index 000000000..50dcce92b --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/class-use/App.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.App (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html new file mode 100644 index 000000000..0da7f013d --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.ArgumentName.html @@ -0,0 +1,751 @@ + + + + + + + +CliParser.ArgumentName (dependency-check-cli 1.0.1 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 proxy url.
    +static StringCONNECTION_TIMEOUT_SHORT + +
    +          The short CLI argument name indicating the proxy url.
    +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_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 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 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
    +
    +
    + +

    +CONNECTION_TIMEOUT_SHORT

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

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CONNECTION_TIMEOUT

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

    +

    +
    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
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +CliParser.ArgumentName

    +
    +public CliParser.ArgumentName()
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html new file mode 100644 index 000000000..751008e48 --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/CliParser.html @@ -0,0 +1,601 @@ + + + + + + + +CliParser (dependency-check-cli 1.0.1 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.
    + StringgetProxyPort() + +
    +          Returns the proxy port.
    + StringgetProxyUrl() + +
    +          Returns the proxy url.
    + 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.
    + 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
    +
    +
    +
    + +

    +getDataDirectory

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

    +

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

    +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/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.ArgumentName.html new file mode 100644 index 000000000..5b6b4b09c --- /dev/null +++ b/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-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/class-use/CliParser.html new file mode 100644 index 000000000..66bdf4a1b --- /dev/null +++ b/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-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..6fea06448 --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.cli (dependency-check-cli 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.cli + + + + +
    +Classes  + +
    +CliParser +
    +CliParser.ArgumentName
    + + + + diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..37549f0ea --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,192 @@ + + + + + + + +org.owasp.dependencycheck.cli (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html new file mode 100644 index 000000000..ef738f922 --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck.cli Class Hierarchy (dependency-check-cli 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

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

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html new file mode 100644 index 000000000..9cafd43f4 --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/cli/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.cli (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..e3b003dfb --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +org.owasp.dependencycheck (dependency-check-cli 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck + + + + +
    +Classes  + +
    +App
    + + + + diff --git a/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..2ed98f0b4 --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,185 @@ + + + + + + + +org.owasp.dependencycheck (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html new file mode 100644 index 000000000..936eb348a --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck Class Hierarchy (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html new file mode 100644 index 000000000..3215e246f --- /dev/null +++ b/dependency-check-cli/apidocs/org/owasp/dependencycheck/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck (dependency-check-cli 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck

    +
    +No usage of org.owasp.dependencycheck +

    +


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

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

    + +

    +  + + diff --git a/dependency-check-cli/apidocs/overview-summary.html b/dependency-check-cli/apidocs/overview-summary.html new file mode 100644 index 000000000..6666c3f03 --- /dev/null +++ b/dependency-check-cli/apidocs/overview-summary.html @@ -0,0 +1,173 @@ + + + + + + + +Overview (dependency-check-cli 1.0.1 API) + + + + + + + + + + + + +


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

    +dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/overview-tree.html b/dependency-check-cli/apidocs/overview-tree.html new file mode 100644 index 000000000..9f0427371 --- /dev/null +++ b/dependency-check-cli/apidocs/overview-tree.html @@ -0,0 +1,153 @@ + + + + + + + +Class Hierarchy (dependency-check-cli 1.0.1 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/dependency-check-cli/apidocs/package-list b/dependency-check-cli/apidocs/package-list new file mode 100644 index 000000000..9118c9a96 --- /dev/null +++ b/dependency-check-cli/apidocs/package-list @@ -0,0 +1,2 @@ +org.owasp.dependencycheck +org.owasp.dependencycheck.cli diff --git a/dependency-check-cli/apidocs/resources/inherit.gif b/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/dependency-check-cli/apidocs/stylesheet.css b/dependency-check-cli/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/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/dependency-check-cli/checkstyle.html b/dependency-check-cli/checkstyle.html new file mode 100644 index 000000000..600c97d21 --- /dev/null +++ b/dependency-check-cli/checkstyle.html @@ -0,0 +1,280 @@ + + + + + + + + + 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
    14001
    +
    +

    Files

    + + + + + + + + + + +
    FilesInfosWarningsErrors
    src/main/java/org/owasp/dependencycheck/cli/CliParser.java001
    +
    +

    Details

    +
    +

    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/dependency-check-cli/checkstyle.rss b/dependency-check-cli/checkstyle.rss new file mode 100644 index 000000000..1fb213ef9 --- /dev/null +++ b/dependency-check-cli/checkstyle.rss @@ -0,0 +1,233 @@ + + + + + dependency-check-cli - Checkstyle report + https://github.com/jeremylong/DependencyCheck.git/dependency-check-cli + dependency-check-cli - Checkstyle report + en-us + ©2012 - 2013 OWASP + + File: 14, + Errors: 1, + 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 + + 0 +
    + 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/dependency-check-cli/cobertura/css/help.css b/dependency-check-cli/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/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/dependency-check-cli/cobertura/css/main.css b/dependency-check-cli/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/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/dependency-check-cli/cobertura/css/sortabletable.css b/dependency-check-cli/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/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/dependency-check-cli/cobertura/css/source-viewer.css b/dependency-check-cli/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/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/dependency-check-cli/cobertura/css/tooltip.css b/dependency-check-cli/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/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/dependency-check-cli/cobertura/frame-packages.html b/dependency-check-cli/cobertura/frame-packages.html new file mode 100644 index 000000000..e518462f8 --- /dev/null +++ b/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/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html b/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html new file mode 100644 index 000000000..f5e212cbf --- /dev/null +++ b/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.cli.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.cli +
    +
     
    +
    Classes
    + + + + + + +
    CliParser (81%)
    + + diff --git a/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html b/dependency-check-cli/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html new file mode 100644 index 000000000..4ff3fa1b8 --- /dev/null +++ b/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/dependency-check-cli/cobertura/frame-sourcefiles.html b/dependency-check-cli/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..313d9e62c --- /dev/null +++ b/dependency-check-cli/cobertura/frame-sourcefiles.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +All Packages +
    +
     
    +
    Classes
    + + + + + + + + + +
    App (0%)
    CliParser (81%)
    + + diff --git a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.cli.html new file mode 100644 index 000000000..33b55e32b --- /dev/null +++ b/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
    81%
    65/80
    76%
    23/30
    1.75
    + +
     
    + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CliParser
    82%
    65/79
    76%
    23/30
    1.75
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.75
    + + + + diff --git a/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html b/dependency-check-cli/cobertura/frame-summary-org.owasp.dependencycheck.html new file mode 100644 index 000000000..cbea31395 --- /dev/null +++ b/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/71
    0%
    0/24
    5.2
    org.owasp.dependencycheck.cli2
    81%
    65/80
    76%
    23/30
    1.75
    + +
     
    + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    App
    0%
    0/71
    0%
    0/24
    5.2
    + + + + diff --git a/dependency-check-cli/cobertura/frame-summary.html b/dependency-check-cli/cobertura/frame-summary.html new file mode 100644 index 000000000..4dfc4fbcf --- /dev/null +++ b/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
    43%
    65/151
    42%
    23/54
    2.44
    org.owasp.dependencycheck1
    0%
    0/71
    0%
    0/24
    5.2
    org.owasp.dependencycheck.cli2
    81%
    65/80
    76%
    23/30
    1.75
    + + + + diff --git a/dependency-check-cli/cobertura/help.html b/dependency-check-cli/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/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/dependency-check-cli/cobertura/images/blank.png b/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/dependency-check-cli/cobertura/images/downsimple.png b/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/dependency-check-cli/cobertura/images/upsimple.png b/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/dependency-check-cli/cobertura/index.html b/dependency-check-cli/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/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/dependency-check-cli/cobertura/js/customsorttypes.js b/dependency-check-cli/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/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/dependency-check-cli/cobertura/js/popup.js b/dependency-check-cli/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/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/dependency-check-cli/cobertura/js/sortabletable.js b/dependency-check-cli/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/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/dependency-check-cli/cobertura/js/stringbuilder.js b/dependency-check-cli/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/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/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html b/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html new file mode 100644 index 000000000..14f951b70 --- /dev/null +++ b/dependency-check-cli/cobertura/org.owasp.dependencycheck.App.html @@ -0,0 +1,349 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.App
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    App
    0%
    0/71
    0%
    0/24
    5.2
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.LogManager;
     28  
     import java.util.logging.Logger;
     29  
     import org.apache.commons.cli.ParseException;
     30  
     import org.owasp.dependencycheck.reporting.ReportGenerator;
     31  
     import org.owasp.dependencycheck.dependency.Dependency;
     32  
     import org.owasp.dependencycheck.cli.CliParser;
     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
             prepareLogger();
     71  0
             final App app = new App();
     72  0
             app.run(args);
     73  0
         }
     74  
     
     75  
         /**
     76  
          * Configures the logger for use by the application.
     77  
          */
     78  
         private static void prepareLogger() {
     79  0
             InputStream in = null;
     80  
             try {
     81  0
                 in = App.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
     82  0
                 LogManager.getLogManager().reset();
     83  0
                 LogManager.getLogManager().readConfiguration(in);
     84  0
             } catch (IOException ex) {
     85  0
                 Logger.getLogger(App.class.getName()).log(Level.FINE, "IO Error preparing the logger", ex);
     86  0
             } catch (SecurityException ex) {
     87  0
                 Logger.getLogger(App.class.getName()).log(Level.FINE, "Error preparing the logger", ex);
     88  
             } finally {
     89  0
                 if (in != null) {
     90  
                     try {
     91  0
                         in.close();
     92  0
                     } catch (Exception ex) {
     93  0
                         Logger.getLogger(App.class.getName()).log(Level.FINEST, "Error closing resource stream", ex);
     94  0
                     }
     95  
                 }
     96  
             }
     97  0
         }
     98  
     
     99  
         /**
     100  
          * Main CLI entry-point into the application.
     101  
          *
     102  
          * @param args the command line arguments
     103  
          */
     104  
         public void run(String[] args) {
     105  
     
     106  0
             final CliParser cli = new CliParser();
     107  
             try {
     108  0
                 cli.parse(args);
     109  0
             } catch (FileNotFoundException ex) {
     110  0
                 System.err.println(ex.getMessage());
     111  0
                 cli.printHelp();
     112  0
                 return;
     113  0
             } catch (ParseException ex) {
     114  0
                 System.err.println(ex.getMessage());
     115  0
                 cli.printHelp();
     116  0
                 return;
     117  0
             }
     118  
     
     119  0
             if (cli.isGetVersion()) {
     120  0
                 cli.printVersionInfo();
     121  0
             } else if (cli.isRunScan()) {
     122  0
                 updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(), cli.getProxyPort(), cli.getDataDirectory());
     123  0
                 runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles());
     124  
             } else {
     125  0
                 cli.printHelp();
     126  
             }
     127  0
         }
     128  
     
     129  
         /**
     130  
          * Scans the specified directories and writes the dependency reports to the
     131  
          * reportDirectory.
     132  
          *
     133  
          * @param reportDirectory the path to the directory where the reports will
     134  
          * be written
     135  
          * @param outputFormat the output format of the report
     136  
          * @param applicationName the application name for the report
     137  
          * @param files the files/directories to scan
     138  
          */
     139  
         private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
     140  0
             final Engine scanner = new Engine();
     141  
     
     142  0
             for (String file : files) {
     143  0
                 scanner.scan(file);
     144  
             }
     145  
     
     146  0
             scanner.analyzeDependencies();
     147  0
             final List<Dependency> dependencies = scanner.getDependencies();
     148  
     
     149  0
             final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers());
     150  
             try {
     151  0
                 report.generateReports(reportDirectory, outputFormat);
     152  0
             } catch (IOException ex) {
     153  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report.");
     154  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
     155  0
             } catch (Exception ex) {
     156  0
                 Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report.");
     157  0
                 Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
     158  0
             }
     159  0
         }
     160  
     
     161  
         /**
     162  
          * Updates the global Settings.
     163  
          *
     164  
          * @param autoUpdate whether or not to update cached web data sources
     165  
          * @param connectionTimeout the timeout to use when downloading resources
     166  
          * (null or blank will use default)
     167  
          * @param proxyUrl the proxy url (null or blank means no proxy will be used)
     168  
          * @param proxyPort the proxy port (null or blank means no port will be
     169  
          * used)
     170  
          * @param dataDirectory the directory to store/retrieve persistent data from
     171  
          */
     172  
         private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort, String dataDirectory) {
     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  
     
     186  
     
     187  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
     188  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
     189  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
     190  
             }
     191  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
     192  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
     193  
             }
     194  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
     195  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
     196  
             }
     197  0
         }
     198  
     }
    + + + + diff --git a/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html b/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html new file mode 100644 index 000000000..15edc2a9f --- /dev/null +++ b/dependency-check-cli/cobertura/org.owasp.dependencycheck.cli.CliParser.html @@ -0,0 +1,892 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.cli.CliParser
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CliParser
    82%
    65/79
    76%
    23/30
    1.75
    CliParser$ArgumentName
    0%
    0/1
    N/A
    1.75
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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  27
     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  27
         private final Options options = createCommandLineOptions();
     50  
         /**
     51  
          * Indicates whether the arguments are valid.
     52  
          */
     53  27
         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  27
             line = parseArgs(args);
     65  
     
     66  24
             if (line != null) {
     67  24
                 validateArgs();
     68  
             }
     69  21
         }
     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  27
             final CommandLineParser parser = new PosixParser();
     80  27
             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  24
             if (isRunScan()) {
     93  6
                 validatePathExists(getScanFiles(), "scan");
     94  3
                 validatePathExists(getReportDirectory(), "out");
     95  3
                 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  3
                 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  21
         }
     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  9
             for (String path : paths) {
     122  6
                 validatePathExists(path, optType);
     123  
             }
     124  3
         }
     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  9
             final File f = new File(path);
     138  9
             if (!f.exists()) {
     139  3
                 isValid = false;
     140  3
                 final String msg = String.format("Invalid '%s' argument: '%s'", optType, path);
     141  3
                 throw new FileNotFoundException(msg);
     142  
             }
     143  6
         }
     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  27
             final Option help = new Option(ArgumentName.HELP_SHORT, ArgumentName.HELP, false,
     154  
                     "Print this message.");
     155  
     
     156  27
             final Option version = new Option(ArgumentName.VERSION_SHORT, ArgumentName.VERSION,
     157  
                     false, "Print the version information.");
     158  
     
     159  27
             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  27
             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  27
             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  27
             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  27
             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  27
             final Option path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN)
     179  
                     .withDescription("The path to scan - this option can be specified multiple times.")
     180  
                     .create(ArgumentName.SCAN_SHORT);
     181  
     
     182  27
             final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
     183  
                     .withDescription("A property file to load.")
     184  
                     .create(ArgumentName.PROP_SHORT);
     185  
     
     186  27
             final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY)
     187  
                     .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.")
     188  
                     .create(ArgumentName.DATA_DIRECTORY_SHORT);
     189  
     
     190  27
             final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT)
     191  
                     .withDescription("The folder to write reports to. This defaults to the current directory.")
     192  
                     .create(ArgumentName.OUT_SHORT);
     193  
     
     194  27
             final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT)
     195  
                     .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.")
     196  
                     .create(ArgumentName.OUTPUT_FORMAT_SHORT);
     197  
     
     198  27
             final OptionGroup og = new OptionGroup();
     199  27
             og.addOption(path);
     200  
     
     201  27
             final Options opts = new Options();
     202  27
             opts.addOptionGroup(og);
     203  27
             opts.addOption(out);
     204  27
             opts.addOption(outputFormat);
     205  27
             opts.addOption(appName);
     206  27
             opts.addOption(version);
     207  27
             opts.addOption(help);
     208  27
             opts.addOption(noUpdate);
     209  27
             opts.addOption(props);
     210  27
             opts.addOption(data);
     211  27
             opts.addOption(proxyPort);
     212  27
             opts.addOption(proxyUrl);
     213  27
             opts.addOption(connectionTimeout);
     214  
     
     215  27
             return opts;
     216  
         }
     217  
     
     218  
         /**
     219  
          * Determines if the 'version' command line argument was passed in.
     220  
          *
     221  
          * @return whether or not the 'version' command line argument was passed in
     222  
          */
     223  
         public boolean isGetVersion() {
     224  21
             return (line != null) && line.hasOption(ArgumentName.VERSION);
     225  
         }
     226  
     
     227  
         /**
     228  
          * Determines if the 'help' command line argument was passed in.
     229  
          *
     230  
          * @return whether or not the 'help' command line argument was passed in
     231  
          */
     232  
         public boolean isGetHelp() {
     233  21
             return (line != null) && line.hasOption(ArgumentName.HELP);
     234  
         }
     235  
     
     236  
         /**
     237  
          * Determines if the 'scan' command line argument was passed in.
     238  
          *
     239  
          * @return whether or not the 'scan' command line argument was passed in
     240  
          */
     241  
         public boolean isRunScan() {
     242  45
             return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
     243  
         }
     244  
     
     245  
         /**
     246  
          * Displays the command line help message to the standard output.
     247  
          */
     248  
         public void printHelp() {
     249  6
             final HelpFormatter formatter = new HelpFormatter();
     250  6
             final String nl = System.getProperty("line.separator");
     251  
     
     252  6
             formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
     253  
                     nl + Settings.getString("application.name", "DependencyCheck")
     254  
                     + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
     255  
                     + Settings.getString("application.name", "DependencyCheck")
     256  
                     + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
     257  
                     options,
     258  
                     "",
     259  
                     true);
     260  6
         }
     261  
     
     262  
         /**
     263  
          * Retrieves the file command line parameter(s) specified for the 'scan'
     264  
          * argument.
     265  
          *
     266  
          * @return the file paths specified on the command line for scan
     267  
          */
     268  
         public String[] getScanFiles() {
     269  9
             return line.getOptionValues(ArgumentName.SCAN);
     270  
         }
     271  
     
     272  
         /**
     273  
          * Returns the directory to write the reports to specified on the command
     274  
          * line.
     275  
          *
     276  
          * @return the path to the reports directory.
     277  
          */
     278  
         public String getReportDirectory() {
     279  3
             return line.getOptionValue(ArgumentName.OUT, ".");
     280  
         }
     281  
     
     282  
         /**
     283  
          * Returns the output format specified on the command line. Defaults to HTML
     284  
          * if no format was specified.
     285  
          *
     286  
          * @return the output format name.
     287  
          */
     288  
         public String getReportFormat() {
     289  0
             return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
     290  
         }
     291  
     
     292  
         /**
     293  
          * Returns the application name specified on the command line.
     294  
          *
     295  
          * @return the application name.
     296  
          */
     297  
         public String getApplicationName() {
     298  0
             return line.getOptionValue(ArgumentName.APP_NAME);
     299  
         }
     300  
     
     301  
         /**
     302  
          * Returns the connection timeout.
     303  
          *
     304  
          * @return the connection timeout
     305  
          */
     306  
         public String getConnectionTimeout() {
     307  0
             return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
     308  
         }
     309  
     
     310  
         /**
     311  
          * Returns the proxy url.
     312  
          *
     313  
          * @return the proxy url
     314  
          */
     315  
         public String getProxyUrl() {
     316  0
             return line.getOptionValue(ArgumentName.PROXY_URL);
     317  
         }
     318  
     
     319  
         /**
     320  
          * Returns the proxy port.
     321  
          *
     322  
          * @return the proxy port
     323  
          */
     324  
         public String getProxyPort() {
     325  0
             return line.getOptionValue(ArgumentName.PROXY_PORT);
     326  
         }
     327  
     
     328  
         /**
     329  
          * Get the value of dataDirectory.
     330  
          *
     331  
          * @return the value of dataDirectory
     332  
          */
     333  
         public String getDataDirectory() {
     334  0
             return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
     335  
         }
     336  
     
     337  
         /**
     338  
          * <p>Prints the manifest information to standard output.</p>
     339  
          * <ul><li>Implementation-Title: ${pom.name}</li>
     340  
          * <li>Implementation-Version: ${pom.version}</li></ul>
     341  
          */
     342  
         public void printVersionInfo() {
     343  3
             final String version = String.format("%s version %s",
     344  
                     Settings.getString("application.name", "DependencyCheck"),
     345  
                     Settings.getString("application.version", "Unknown"));
     346  3
             System.out.println(version);
     347  3
         }
     348  
     
     349  
         /**
     350  
          * Checks if the auto update feature has been disabled. If it has been
     351  
          * disabled via the command line this will return false.
     352  
          *
     353  
          * @return if auto-update is allowed.
     354  
          */
     355  
         public boolean isAutoUpdate() {
     356  0
             return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
     357  
         }
     358  
     
     359  
         /**
     360  
          * A collection of static final strings that represent the possible command
     361  
          * line arguments.
     362  
          */
     363  27
         public static class ArgumentName {
     364  
     
     365  
             /**
     366  
              * The long CLI argument name specifying the directory/file to scan.
     367  
              */
     368  
             public static final String SCAN = "scan";
     369  
             /**
     370  
              * The short CLI argument name specifying the directory/file to scan.
     371  
              */
     372  
             public static final String SCAN_SHORT = "s";
     373  
             /**
     374  
              * The long CLI argument name specifying that the CPE/CVE/etc. data
     375  
              * should not be automatically updated.
     376  
              */
     377  
             public static final String DISABLE_AUTO_UPDATE = "noupdate";
     378  
             /**
     379  
              * The short CLI argument name specifying that the CPE/CVE/etc. data
     380  
              * should not be automatically updated.
     381  
              */
     382  
             public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
     383  
             /**
     384  
              * The long CLI argument name specifying the directory to write the
     385  
              * reports to.
     386  
              */
     387  
             public static final String OUT = "out";
     388  
             /**
     389  
              * The short CLI argument name specifying the directory to write the
     390  
              * reports to.
     391  
              */
     392  
             public static final String OUT_SHORT = "o";
     393  
             /**
     394  
              * The long CLI argument name specifying the output format to write the
     395  
              * reports to.
     396  
              */
     397  
             public static final String OUTPUT_FORMAT = "format";
     398  
             /**
     399  
              * The short CLI argument name specifying the output format to write the
     400  
              * reports to.
     401  
              */
     402  
             public static final String OUTPUT_FORMAT_SHORT = "f";
     403  
             /**
     404  
              * The long CLI argument name specifying the name of the application to
     405  
              * be scanned.
     406  
              */
     407  
             public static final String APP_NAME = "app";
     408  
             /**
     409  
              * The short CLI argument name specifying the name of the application to
     410  
              * be scanned.
     411  
              */
     412  
             public static final String APP_NAME_SHORT = "a";
     413  
             /**
     414  
              * The long CLI argument name asking for help.
     415  
              */
     416  
             public static final String HELP = "help";
     417  
             /**
     418  
              * The short CLI argument name asking for help.
     419  
              */
     420  
             public static final String HELP_SHORT = "h";
     421  
             /**
     422  
              * The long CLI argument name asking for the version.
     423  
              */
     424  
             public static final String VERSION_SHORT = "v";
     425  
             /**
     426  
              * The short CLI argument name asking for the version.
     427  
              */
     428  
             public static final String VERSION = "version";
     429  
             /**
     430  
              * The short CLI argument name indicating the proxy port.
     431  
              */
     432  
             public static final String PROXY_PORT_SHORT = "p";
     433  
             /**
     434  
              * The CLI argument name indicating the proxy port.
     435  
              */
     436  
             public static final String PROXY_PORT = "proxyport";
     437  
             /**
     438  
              * The short CLI argument name indicating the proxy url.
     439  
              */
     440  
             public static final String PROXY_URL_SHORT = "u";
     441  
             /**
     442  
              * The CLI argument name indicating the proxy url.
     443  
              */
     444  
             public static final String PROXY_URL = "proxyurl";
     445  
             /**
     446  
              * The short CLI argument name indicating the proxy url.
     447  
              */
     448  
             public static final String CONNECTION_TIMEOUT_SHORT = "c";
     449  
             /**
     450  
              * The CLI argument name indicating the proxy url.
     451  
              */
     452  
             public static final String CONNECTION_TIMEOUT = "connectiontimeout";
     453  
             /**
     454  
              * The short CLI argument name for setting the location of an additional
     455  
              * properties file.
     456  
              */
     457  
             public static final String PROP_SHORT = "p";
     458  
             /**
     459  
              * The CLI argument name for setting the location of an additional
     460  
              * properties file.
     461  
              */
     462  
             public static final String PROP = "propertyfile";
     463  
             /**
     464  
              * The CLI argument name for setting the location of the data directory.
     465  
              */
     466  
             public static final String DATA_DIRECTORY = "data";
     467  
             /**
     468  
              * The short CLI argument name for setting the location of the data
     469  
              * directory.
     470  
              */
     471  
             public static final String DATA_DIRECTORY_SHORT = "d";
     472  
         }
     473  
     }
    + + + + diff --git a/dependency-check-cli/cpd.html b/dependency-check-cli/cpd.html new file mode 100644 index 000000000..9df81bab0 --- /dev/null +++ b/dependency-check-cli/cpd.html @@ -0,0 +1,244 @@ + + + + + + + + + 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/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css b/dependency-check-cli/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/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/dependency-check-cli/css/print.css b/dependency-check-cli/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/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/dependency-check-cli/css/site.css b/dependency-check-cli/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/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/dependency-check-cli/dependency-updates-report.html b/dependency-check-cli/dependency-updates-report.html new file mode 100644 index 000000000..c9e26beed --- /dev/null +++ b/dependency-check-cli/dependency-updates-report.html @@ -0,0 +1,403 @@ + + + + + + + + + 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.1compilejar
    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.1
    Scopecompile
    Classifier
    Typejar
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/findbugs.html b/dependency-check-cli/findbugs.html new file mode 100644 index 000000000..75c383ec0 --- /dev/null +++ b/dependency-check-cli/findbugs.html @@ -0,0 +1,263 @@ + + + + + + + + + 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/dependency-check-cli/images/accessories-text-editor.png b/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/dependency-check-cli/images/add.gif b/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/dependency-check-cli/images/apache-maven-project-2.png b/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/dependency-check-cli/images/contact-new.png b/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/dependency-check-cli/images/drive-harddisk.png b/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/dependency-check-cli/images/icon_error_sml.gif b/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/dependency-check-cli/images/icon_help_sml.gif b/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/dependency-check-cli/images/icon_info_sml.gif b/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/dependency-check-cli/images/icon_warning_sml.gif b/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/dependency-check-cli/images/logos/build-by-maven-white.png b/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/dependency-check-cli/images/logos/maven-feather.png b/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/dependency-check-cli/images/network-server.png b/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/dependency-check-cli/images/profiles/pre-release.png b/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/dependency-check-cli/images/profiles/retired.png b/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/dependency-check-cli/images/profiles/sandbox.png b/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/dependency-check-cli/img/glyphicons-halflings.png b/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/dependency-check-cli/index.html b/dependency-check-cli/index.html new file mode 100644 index 000000000..3855c4f79 --- /dev/null +++ b/dependency-check-cli/index.html @@ -0,0 +1,178 @@ + + + + + + + + + dependency-check-cli - About + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    About dependency-check-cli

    +

    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/dependency-check-cli/installation.html b/dependency-check-cli/installation.html new file mode 100644 index 000000000..6c33036bd --- /dev/null +++ b/dependency-check-cli/installation.html @@ -0,0 +1,172 @@ + + + + + + + + + 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:

    +
    +

    Windows

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

    *nix

    + +
    +
    dependency-check.sh --app "My App Name" --scan "/java/application/lib"
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js b/dependency-check-cli/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/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/dependency-check-cli/plugin-updates-report.html b/dependency-check-cli/plugin-updates-report.html new file mode 100644 index 000000000..f7b55e4f1 --- /dev/null +++ b/dependency-check-cli/plugin-updates-report.html @@ -0,0 +1,858 @@ + + + + + + + + + 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 available6
    # 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 update8
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version0
    +
    +

    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.7
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-gpg-plugin1.4
    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.4
    org.codehaus.mojocobertura-maven-plugin2.5.2
    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
    +
    +

    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 No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    +
    +

    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-gpg-plugin

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

    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
    +
    +

    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 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.4jar
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

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

    + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    +
    +

    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
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.codehaus.mojo
    Artifact Idappassembler-maven-plugin
    Current Version1.4
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/pmd.html b/dependency-check-cli/pmd.html new file mode 100644 index 000000000..00ad282e7 --- /dev/null +++ b/dependency-check-cli/pmd.html @@ -0,0 +1,261 @@ + + + + + + + + + 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.224
    Useless parentheses.233
    Useless parentheses.242
    Useless parentheses.356
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/project-info.html b/dependency-check-cli/project-info.html new file mode 100644 index 000000000..777284331 --- /dev/null +++ b/dependency-check-cli/project-info.html @@ -0,0 +1,193 @@ + + + + + + + + + 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/dependency-check-cli/project-reports.html b/dependency-check-cli/project-reports.html new file mode 100644 index 000000000..ffd35801a --- /dev/null +++ b/dependency-check-cli/project-reports.html @@ -0,0 +1,283 @@ + + + + + + + + + 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/dependency-check-cli/project-summary.html b/dependency-check-cli/project-summary.html new file mode 100644 index 000000000..7593aefd6 --- /dev/null +++ b/dependency-check-cli/project-summary.html @@ -0,0 +1,225 @@ + + + + + + + + + dependency-check-cli - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    Namedependency-check-cli
    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.1
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/surefire-report.html b/dependency-check-cli/surefire-report.html new file mode 100644 index 000000000..6592e370f --- /dev/null +++ b/dependency-check-cli/surefire-report.html @@ -0,0 +1,360 @@ + + + + + + + + + dependency-check-cli - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    9000100%0.044

    +

    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.044

    +

    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.044

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    CliParserTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testParse_printHelp0.04
    testParse_printVersionInfo0
    testParse_help0
    testParse_scan0
    testParse0
    testParse_unknown0
    testParse_version0
    testParse_scan_unknownFile0
    testParse_scan_withFileExists0.004

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-cli/taglist.html b/dependency-check-cli/taglist.html new file mode 100644 index 000000000..2548449cc --- /dev/null +++ b/dependency-check-cli/taglist.html @@ -0,0 +1,251 @@ + + + + + + + + + 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/dependency-check-cli/xref-test/allclasses-frame.html b/dependency-check-cli/xref-test/allclasses-frame.html new file mode 100644 index 000000000..49fd7c096 --- /dev/null +++ b/dependency-check-cli/xref-test/allclasses-frame.html @@ -0,0 +1,20 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-cli/xref-test/index.html b/dependency-check-cli/xref-test/index.html new file mode 100644 index 000000000..de04782a1 --- /dev/null +++ b/dependency-check-cli/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-cli 1.0.1 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/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/CliParserTest.html new file mode 100644 index 000000000..6d2a6a177 --- /dev/null +++ b/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/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..8d2f870ca --- /dev/null +++ b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-cli 1.0.1 Reference Package org.owasp.dependencycheck.cli + + + + +

    + org.owasp.dependencycheck.cli +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..0e3bb84bf --- /dev/null +++ b/dependency-check-cli/xref-test/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-cli 1.0.1 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/dependency-check-cli/xref-test/overview-frame.html b/dependency-check-cli/xref-test/overview-frame.html new file mode 100644 index 000000000..1a880de43 --- /dev/null +++ b/dependency-check-cli/xref-test/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + dependency-check-cli 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-cli/xref-test/overview-summary.html b/dependency-check-cli/xref-test/overview-summary.html new file mode 100644 index 000000000..d0329dc44 --- /dev/null +++ b/dependency-check-cli/xref-test/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + dependency-check-cli 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-cli 1.0.1 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.cli +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-cli/xref-test/stylesheet.css b/dependency-check-cli/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-cli/xref/allclasses-frame.html b/dependency-check-cli/xref/allclasses-frame.html new file mode 100644 index 000000000..22c03fadd --- /dev/null +++ b/dependency-check-cli/xref/allclasses-frame.html @@ -0,0 +1,26 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-cli/xref/index.html b/dependency-check-cli/xref/index.html new file mode 100644 index 000000000..de04782a1 --- /dev/null +++ b/dependency-check-cli/xref/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-cli 1.0.1 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/dependency-check-cli/xref/org/owasp/dependencycheck/App.html b/dependency-check-cli/xref/org/owasp/dependencycheck/App.html new file mode 100644 index 000000000..930c83734 --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/App.html @@ -0,0 +1,212 @@ + + + + +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.LogManager;
    +28  import java.util.logging.Logger;
    +29  import org.apache.commons.cli.ParseException;
    +30  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +31  import org.owasp.dependencycheck.dependency.Dependency;
    +32  import org.owasp.dependencycheck.cli.CliParser;
    +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          prepareLogger();
    +71          final App app = new App();
    +72          app.run(args);
    +73      }
    +74  
    +75      /**
    +76       * Configures the logger for use by the application.
    +77       */
    +78      private static void prepareLogger() {
    +79          InputStream in = null;
    +80          try {
    +81              in = App.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +82              LogManager.getLogManager().reset();
    +83              LogManager.getLogManager().readConfiguration(in);
    +84          } catch (IOException ex) {
    +85              Logger.getLogger(App.class.getName()).log(Level.FINE, "IO Error preparing the logger", ex);
    +86          } catch (SecurityException ex) {
    +87              Logger.getLogger(App.class.getName()).log(Level.FINE, "Error preparing the logger", ex);
    +88          } finally {
    +89              if (in != null) {
    +90                  try {
    +91                      in.close();
    +92                  } catch (Exception ex) {
    +93                      Logger.getLogger(App.class.getName()).log(Level.FINEST, "Error closing resource stream", ex);
    +94                  }
    +95              }
    +96          }
    +97      }
    +98  
    +99      /**
    +100      * Main CLI entry-point into the application.
    +101      *
    +102      * @param args the command line arguments
    +103      */
    +104     public void run(String[] args) {
    +105 
    +106         final CliParser cli = new CliParser();
    +107         try {
    +108             cli.parse(args);
    +109         } catch (FileNotFoundException ex) {
    +110             System.err.println(ex.getMessage());
    +111             cli.printHelp();
    +112             return;
    +113         } catch (ParseException ex) {
    +114             System.err.println(ex.getMessage());
    +115             cli.printHelp();
    +116             return;
    +117         }
    +118 
    +119         if (cli.isGetVersion()) {
    +120             cli.printVersionInfo();
    +121         } else if (cli.isRunScan()) {
    +122             updateSettings(cli.isAutoUpdate(), cli.getConnectionTimeout(), cli.getProxyUrl(), cli.getProxyPort(), cli.getDataDirectory());
    +123             runScan(cli.getReportDirectory(), cli.getReportFormat(), cli.getApplicationName(), cli.getScanFiles());
    +124         } else {
    +125             cli.printHelp();
    +126         }
    +127     }
    +128 
    +129     /**
    +130      * Scans the specified directories and writes the dependency reports to the
    +131      * reportDirectory.
    +132      *
    +133      * @param reportDirectory the path to the directory where the reports will
    +134      * be written
    +135      * @param outputFormat the output format of the report
    +136      * @param applicationName the application name for the report
    +137      * @param files the files/directories to scan
    +138      */
    +139     private void runScan(String reportDirectory, String outputFormat, String applicationName, String[] files) {
    +140         final Engine scanner = new Engine();
    +141 
    +142         for (String file : files) {
    +143             scanner.scan(file);
    +144         }
    +145 
    +146         scanner.analyzeDependencies();
    +147         final List<Dependency> dependencies = scanner.getDependencies();
    +148 
    +149         final ReportGenerator report = new ReportGenerator(applicationName, dependencies, scanner.getAnalyzers());
    +150         try {
    +151             report.generateReports(reportDirectory, outputFormat);
    +152         } catch (IOException ex) {
    +153             Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an IO error while attempting to generate the report.");
    +154             Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    +155         } catch (Exception ex) {
    +156             Logger.getLogger(App.class.getName()).log(Level.SEVERE, "There was an error while attempting to generate the report.");
    +157             Logger.getLogger(App.class.getName()).log(Level.INFO, null, ex);
    +158         }
    +159     }
    +160 
    +161     /**
    +162      * Updates the global Settings.
    +163      *
    +164      * @param autoUpdate whether or not to update cached web data sources
    +165      * @param connectionTimeout the timeout to use when downloading resources
    +166      * (null or blank will use default)
    +167      * @param proxyUrl the proxy url (null or blank means no proxy will be used)
    +168      * @param proxyPort the proxy port (null or blank means no port will be
    +169      * used)
    +170      * @param dataDirectory the directory to store/retrieve persistent data from
    +171      */
    +172     private void updateSettings(boolean autoUpdate, String connectionTimeout, String proxyUrl, String proxyPort, String dataDirectory) {
    +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 
    +186 
    +187         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +188         if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +189             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +190         }
    +191         if (proxyPort != null && !proxyPort.isEmpty()) {
    +192             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +193         }
    +194         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +195             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +196         }
    +197     }
    +198 }
    +
    +
    + + diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html new file mode 100644 index 000000000..716acd33a --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/CliParser.html @@ -0,0 +1,487 @@ + + + + +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 path = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.SCAN)
    +179                 .withDescription("The path to scan - this option can be specified multiple times.")
    +180                 .create(ArgumentName.SCAN_SHORT);
    +181 
    +182         final Option props = OptionBuilder.withArgName("file").hasArg().withLongOpt(ArgumentName.PROP)
    +183                 .withDescription("A property file to load.")
    +184                 .create(ArgumentName.PROP_SHORT);
    +185 
    +186         final Option data = OptionBuilder.withArgName("path").hasArg().withLongOpt(ArgumentName.DATA_DIRECTORY)
    +187                 .withDescription("The location of the data directory used to store persistent data. This option should generally not be set.")
    +188                 .create(ArgumentName.DATA_DIRECTORY_SHORT);
    +189 
    +190         final Option out = OptionBuilder.withArgName("folder").hasArg().withLongOpt(ArgumentName.OUT)
    +191                 .withDescription("The folder to write reports to. This defaults to the current directory.")
    +192                 .create(ArgumentName.OUT_SHORT);
    +193 
    +194         final Option outputFormat = OptionBuilder.withArgName("format").hasArg().withLongOpt(ArgumentName.OUTPUT_FORMAT)
    +195                 .withDescription("The output format to write to (XML, HTML, VULN, ALL). The default is HTML.")
    +196                 .create(ArgumentName.OUTPUT_FORMAT_SHORT);
    +197 
    +198         final OptionGroup og = new OptionGroup();
    +199         og.addOption(path);
    +200 
    +201         final Options opts = new Options();
    +202         opts.addOptionGroup(og);
    +203         opts.addOption(out);
    +204         opts.addOption(outputFormat);
    +205         opts.addOption(appName);
    +206         opts.addOption(version);
    +207         opts.addOption(help);
    +208         opts.addOption(noUpdate);
    +209         opts.addOption(props);
    +210         opts.addOption(data);
    +211         opts.addOption(proxyPort);
    +212         opts.addOption(proxyUrl);
    +213         opts.addOption(connectionTimeout);
    +214 
    +215         return opts;
    +216     }
    +217 
    +218     /**
    +219      * Determines if the 'version' command line argument was passed in.
    +220      *
    +221      * @return whether or not the 'version' command line argument was passed in
    +222      */
    +223     public boolean isGetVersion() {
    +224         return (line != null) && line.hasOption(ArgumentName.VERSION);
    +225     }
    +226 
    +227     /**
    +228      * Determines if the 'help' command line argument was passed in.
    +229      *
    +230      * @return whether or not the 'help' command line argument was passed in
    +231      */
    +232     public boolean isGetHelp() {
    +233         return (line != null) && line.hasOption(ArgumentName.HELP);
    +234     }
    +235 
    +236     /**
    +237      * Determines if the 'scan' command line argument was passed in.
    +238      *
    +239      * @return whether or not the 'scan' command line argument was passed in
    +240      */
    +241     public boolean isRunScan() {
    +242         return (line != null) && isValid && line.hasOption(ArgumentName.SCAN);
    +243     }
    +244 
    +245     /**
    +246      * Displays the command line help message to the standard output.
    +247      */
    +248     public void printHelp() {
    +249         final HelpFormatter formatter = new HelpFormatter();
    +250         final String nl = System.getProperty("line.separator");
    +251 
    +252         formatter.printHelp(Settings.getString("application.name", "DependencyCheck"),
    +253                 nl + Settings.getString("application.name", "DependencyCheck")
    +254                 + " can be used to identify if there are any known CVE vulnerabilities in libraries utilized by an application. "
    +255                 + Settings.getString("application.name", "DependencyCheck")
    +256                 + " will automatically update required data from the Internet, such as the CVE and CPE data files from nvd.nist.gov." + nl + nl,
    +257                 options,
    +258                 "",
    +259                 true);
    +260     }
    +261 
    +262     /**
    +263      * Retrieves the file command line parameter(s) specified for the 'scan'
    +264      * argument.
    +265      *
    +266      * @return the file paths specified on the command line for scan
    +267      */
    +268     public String[] getScanFiles() {
    +269         return line.getOptionValues(ArgumentName.SCAN);
    +270     }
    +271 
    +272     /**
    +273      * Returns the directory to write the reports to specified on the command
    +274      * line.
    +275      *
    +276      * @return the path to the reports directory.
    +277      */
    +278     public String getReportDirectory() {
    +279         return line.getOptionValue(ArgumentName.OUT, ".");
    +280     }
    +281 
    +282     /**
    +283      * Returns the output format specified on the command line. Defaults to HTML
    +284      * if no format was specified.
    +285      *
    +286      * @return the output format name.
    +287      */
    +288     public String getReportFormat() {
    +289         return line.getOptionValue(ArgumentName.OUTPUT_FORMAT, "HTML");
    +290     }
    +291 
    +292     /**
    +293      * Returns the application name specified on the command line.
    +294      *
    +295      * @return the application name.
    +296      */
    +297     public String getApplicationName() {
    +298         return line.getOptionValue(ArgumentName.APP_NAME);
    +299     }
    +300 
    +301     /**
    +302      * Returns the connection timeout.
    +303      *
    +304      * @return the connection timeout
    +305      */
    +306     public String getConnectionTimeout() {
    +307         return line.getOptionValue(ArgumentName.CONNECTION_TIMEOUT);
    +308     }
    +309 
    +310     /**
    +311      * Returns the proxy url.
    +312      *
    +313      * @return the proxy url
    +314      */
    +315     public String getProxyUrl() {
    +316         return line.getOptionValue(ArgumentName.PROXY_URL);
    +317     }
    +318 
    +319     /**
    +320      * Returns the proxy port.
    +321      *
    +322      * @return the proxy port
    +323      */
    +324     public String getProxyPort() {
    +325         return line.getOptionValue(ArgumentName.PROXY_PORT);
    +326     }
    +327 
    +328     /**
    +329      * Get the value of dataDirectory.
    +330      *
    +331      * @return the value of dataDirectory
    +332      */
    +333     public String getDataDirectory() {
    +334         return line.getOptionValue(ArgumentName.DATA_DIRECTORY);
    +335     }
    +336 
    +337     /**
    +338      * <p>Prints the manifest information to standard output.</p>
    +339      * <ul><li>Implementation-Title: ${pom.name}</li>
    +340      * <li>Implementation-Version: ${pom.version}</li></ul>
    +341      */
    +342     public void printVersionInfo() {
    +343         final String version = String.format("%s version %s",
    +344                 Settings.getString("application.name", "DependencyCheck"),
    +345                 Settings.getString("application.version", "Unknown"));
    +346         System.out.println(version);
    +347     }
    +348 
    +349     /**
    +350      * Checks if the auto update feature has been disabled. If it has been
    +351      * disabled via the command line this will return false.
    +352      *
    +353      * @return if auto-update is allowed.
    +354      */
    +355     public boolean isAutoUpdate() {
    +356         return (line == null) || !line.hasOption(ArgumentName.DISABLE_AUTO_UPDATE);
    +357     }
    +358 
    +359     /**
    +360      * A collection of static final strings that represent the possible command
    +361      * line arguments.
    +362      */
    +363     public static class ArgumentName {
    +364 
    +365         /**
    +366          * The long CLI argument name specifying the directory/file to scan.
    +367          */
    +368         public static final String SCAN = "scan";
    +369         /**
    +370          * The short CLI argument name specifying the directory/file to scan.
    +371          */
    +372         public static final String SCAN_SHORT = "s";
    +373         /**
    +374          * The long CLI argument name specifying that the CPE/CVE/etc. data
    +375          * should not be automatically updated.
    +376          */
    +377         public static final String DISABLE_AUTO_UPDATE = "noupdate";
    +378         /**
    +379          * The short CLI argument name specifying that the CPE/CVE/etc. data
    +380          * should not be automatically updated.
    +381          */
    +382         public static final String DISABLE_AUTO_UPDATE_SHORT = "n";
    +383         /**
    +384          * The long CLI argument name specifying the directory to write the
    +385          * reports to.
    +386          */
    +387         public static final String OUT = "out";
    +388         /**
    +389          * The short CLI argument name specifying the directory to write the
    +390          * reports to.
    +391          */
    +392         public static final String OUT_SHORT = "o";
    +393         /**
    +394          * The long CLI argument name specifying the output format to write the
    +395          * reports to.
    +396          */
    +397         public static final String OUTPUT_FORMAT = "format";
    +398         /**
    +399          * The short CLI argument name specifying the output format to write the
    +400          * reports to.
    +401          */
    +402         public static final String OUTPUT_FORMAT_SHORT = "f";
    +403         /**
    +404          * The long CLI argument name specifying the name of the application to
    +405          * be scanned.
    +406          */
    +407         public static final String APP_NAME = "app";
    +408         /**
    +409          * The short CLI argument name specifying the name of the application to
    +410          * be scanned.
    +411          */
    +412         public static final String APP_NAME_SHORT = "a";
    +413         /**
    +414          * The long CLI argument name asking for help.
    +415          */
    +416         public static final String HELP = "help";
    +417         /**
    +418          * The short CLI argument name asking for help.
    +419          */
    +420         public static final String HELP_SHORT = "h";
    +421         /**
    +422          * The long CLI argument name asking for the version.
    +423          */
    +424         public static final String VERSION_SHORT = "v";
    +425         /**
    +426          * The short CLI argument name asking for the version.
    +427          */
    +428         public static final String VERSION = "version";
    +429         /**
    +430          * The short CLI argument name indicating the proxy port.
    +431          */
    +432         public static final String PROXY_PORT_SHORT = "p";
    +433         /**
    +434          * The CLI argument name indicating the proxy port.
    +435          */
    +436         public static final String PROXY_PORT = "proxyport";
    +437         /**
    +438          * The short CLI argument name indicating the proxy url.
    +439          */
    +440         public static final String PROXY_URL_SHORT = "u";
    +441         /**
    +442          * The CLI argument name indicating the proxy url.
    +443          */
    +444         public static final String PROXY_URL = "proxyurl";
    +445         /**
    +446          * The short CLI argument name indicating the proxy url.
    +447          */
    +448         public static final String CONNECTION_TIMEOUT_SHORT = "c";
    +449         /**
    +450          * The CLI argument name indicating the proxy url.
    +451          */
    +452         public static final String CONNECTION_TIMEOUT = "connectiontimeout";
    +453         /**
    +454          * The short CLI argument name for setting the location of an additional
    +455          * properties file.
    +456          */
    +457         public static final String PROP_SHORT = "p";
    +458         /**
    +459          * The CLI argument name for setting the location of an additional
    +460          * properties file.
    +461          */
    +462         public static final String PROP = "propertyfile";
    +463         /**
    +464          * The CLI argument name for setting the location of the data directory.
    +465          */
    +466         public static final String DATA_DIRECTORY = "data";
    +467         /**
    +468          * The short CLI argument name for setting the location of the data
    +469          * directory.
    +470          */
    +471         public static final String DATA_DIRECTORY_SHORT = "d";
    +472     }
    +473 }
    +
    +
    + + diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html new file mode 100644 index 000000000..1ba72d740 --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-cli 1.0.1 Reference Package org.owasp.dependencycheck.cli + + + + +

    + org.owasp.dependencycheck.cli +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html new file mode 100644 index 000000000..fdc99f990 --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/cli/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-cli 1.0.1 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/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html b/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..bef82994e --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-cli 1.0.1 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html b/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..de4fccbe8 --- /dev/null +++ b/dependency-check-cli/xref/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-cli 1.0.1 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/dependency-check-cli/xref/overview-frame.html b/dependency-check-cli/xref/overview-frame.html new file mode 100644 index 000000000..04c4b6389 --- /dev/null +++ b/dependency-check-cli/xref/overview-frame.html @@ -0,0 +1,28 @@ + + + + + + dependency-check-cli 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-cli/xref/overview-summary.html b/dependency-check-cli/xref/overview-summary.html new file mode 100644 index 000000000..f18c5fc42 --- /dev/null +++ b/dependency-check-cli/xref/overview-summary.html @@ -0,0 +1,69 @@ + + + + + + dependency-check-cli 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-cli 1.0.1 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/dependency-check-cli/xref/stylesheet.css b/dependency-check-cli/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-core/apidocs/allclasses-frame.html b/dependency-check-core/apidocs/allclasses-frame.html new file mode 100644 index 000000000..32a67fc8f --- /dev/null +++ b/dependency-check-core/apidocs/allclasses-frame.html @@ -0,0 +1,342 @@ + + + + + + + +All Classes (dependency-check-core 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    AbstractAnalyzer +
    +AbstractIndex +
    +AbstractTokenizingFilter +
    +Activation +
    +ActivationFile +
    +ActivationOS +
    +ActivationProperty +
    +AlphaNumericTokenizer +
    +AnalysisException +
    +AnalysisPhase +
    +Analyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +Build +
    +Build.Extensions +
    +Build.Filters +
    +Build.Plugins +
    +Build.Resources +
    +Build.TestResources +
    +BuildBase +
    +BuildBase.Filters +
    +BuildBase.Plugins +
    +BuildBase.Resources +
    +BuildBase.TestResources +
    +CachedWebDataSource +
    +Checksum +
    +CiManagement +
    +CiManagement.Notifiers +
    +Contributor +
    +Contributor.Properties +
    +Contributor.Roles +
    +CPEAnalyzer +
    +CveDB +
    +CweDB +
    +CweHandler +
    +DatabaseException +
    +DatabaseUpdater +
    +DatabaseUpdater.NvdCveUrl +
    +Dependency +
    +Dependency +
    +Dependency.Exclusions +
    +DependencyBundlingAnalyzer +
    +DependencyManagement +
    +DependencyManagement.Dependencies +
    +DependencySimilarity +
    +DependencyVersion +
    +DependencyVersionUtil +
    +DeploymentRepository +
    +Developer +
    +Developer.Properties +
    +Developer.Roles +
    +DistributionManagement +
    +Downloader +
    +DownloadFailedException +
    +Engine +
    +Evidence +
    +Evidence.Confidence +
    +EvidenceCollection +
    +Exclusion +
    +Extension +
    +FalsePositiveAnalyzer +
    +FieldAnalyzer +
    +Fields +
    +FileNameAnalyzer +
    +FileUtils +
    +Filter +
    +HintAnalyzer +
    +Identifier +
    +Index +
    +IndexEntry +
    +InvalidDataException +
    +InvalidSettingException +
    +IssueManagement +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer +
    +License +
    +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 +
    +NonClosingStream +
    +Notifier +
    +Notifier.Configuration +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element +
    +NvdCveAnalyzer +
    +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 +
    +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 +
    +TokenPairConcatenatingFilter +
    +UpdateException +
    +UpdateService +
    +UrlStringUtils +
    +UrlTokenizingFilter +
    +VelocityLoggerRedirect +
    +VersionAnalyzer +
    +VersionTokenizingFilter +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerableSoftware +
    +
    + + + diff --git a/dependency-check-core/apidocs/allclasses-noframe.html b/dependency-check-core/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..07d7f012c --- /dev/null +++ b/dependency-check-core/apidocs/allclasses-noframe.html @@ -0,0 +1,342 @@ + + + + + + + +All Classes (dependency-check-core 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    AbstractAnalyzer +
    +AbstractIndex +
    +AbstractTokenizingFilter +
    +Activation +
    +ActivationFile +
    +ActivationOS +
    +ActivationProperty +
    +AlphaNumericTokenizer +
    +AnalysisException +
    +AnalysisPhase +
    +Analyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +Build +
    +Build.Extensions +
    +Build.Filters +
    +Build.Plugins +
    +Build.Resources +
    +Build.TestResources +
    +BuildBase +
    +BuildBase.Filters +
    +BuildBase.Plugins +
    +BuildBase.Resources +
    +BuildBase.TestResources +
    +CachedWebDataSource +
    +Checksum +
    +CiManagement +
    +CiManagement.Notifiers +
    +Contributor +
    +Contributor.Properties +
    +Contributor.Roles +
    +CPEAnalyzer +
    +CveDB +
    +CweDB +
    +CweHandler +
    +DatabaseException +
    +DatabaseUpdater +
    +DatabaseUpdater.NvdCveUrl +
    +Dependency +
    +Dependency +
    +Dependency.Exclusions +
    +DependencyBundlingAnalyzer +
    +DependencyManagement +
    +DependencyManagement.Dependencies +
    +DependencySimilarity +
    +DependencyVersion +
    +DependencyVersionUtil +
    +DeploymentRepository +
    +Developer +
    +Developer.Properties +
    +Developer.Roles +
    +DistributionManagement +
    +Downloader +
    +DownloadFailedException +
    +Engine +
    +Evidence +
    +Evidence.Confidence +
    +EvidenceCollection +
    +Exclusion +
    +Extension +
    +FalsePositiveAnalyzer +
    +FieldAnalyzer +
    +Fields +
    +FileNameAnalyzer +
    +FileUtils +
    +Filter +
    +HintAnalyzer +
    +Identifier +
    +Index +
    +IndexEntry +
    +InvalidDataException +
    +InvalidSettingException +
    +IssueManagement +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer +
    +License +
    +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 +
    +NonClosingStream +
    +Notifier +
    +Notifier.Configuration +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element +
    +NvdCveAnalyzer +
    +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 +
    +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 +
    +TokenPairConcatenatingFilter +
    +UpdateException +
    +UpdateService +
    +UrlStringUtils +
    +UrlTokenizingFilter +
    +VelocityLoggerRedirect +
    +VersionAnalyzer +
    +VersionTokenizingFilter +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerableSoftware +
    +
    + + + diff --git a/dependency-check-core/apidocs/constant-values.html b/dependency-check-core/apidocs/constant-values.html new file mode 100644 index 000000000..74ea05615 --- /dev/null +++ b/dependency-check-core/apidocs/constant-values.html @@ -0,0 +1,595 @@ + + + + + + + +Constant Field Values (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

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

    + + + + + + + + + + + + + + + + + + + + + + +
    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.CveDB
    +public static final StringCLEANUP_ORPHANS"DELETE FROM CpeEntry WHERE id not in (SELECT CPEEntryId FROM Software); "
    +public static final StringDB_SCHEMA_VERSION"2.5"
    +public static final StringDB_STRUCTURE_RESOURCE"data/initialize.sql"
    +public static final StringDELETE_REFERENCE"DELETE FROM reference WHERE cveid = ?"
    +public static final StringDELETE_SOFTWARE"DELETE FROM software WHERE cveid = ?"
    +public static final StringDELETE_VULNERABILITY"DELETE FROM vulnerability WHERE cve = ?"
    +public static final StringINSERT_CPE"INSERT INTO cpeEntry (cpe, vendor, product) VALUES (?, ?, ?)"
    +public static final StringINSERT_REFERENCE"INSERT INTO reference (cveid, name, url, source) VALUES (?, ?, ?, ?)"
    +public static final StringINSERT_SOFTWARE"INSERT INTO software (cveid, cpeEntryId, previousVersion) VALUES (?, ?, ?)"
    +public static final StringINSERT_VULNERABILITY"INSERT INTO vulnerability (cve, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
    +public static final StringSELECT_CPE_ENTRIES"SELECT cpe FROM cpeEntry WHERE vendor = ? AND product = ?"
    +public static final StringSELECT_CPE_ID"SELECT id FROM cpeEntry WHERE cpe = ?"
    +public static final StringSELECT_CVE_FROM_SOFTWARE"SELECT cve, cpe, previousVersion FROM software INNER JOIN vulnerability ON vulnerability.id = software.cveId INNER JOIN cpeEntry ON cpeEntry.id = software.cpeEntryId WHERE vendor = ? AND product = ?"
    +public static final StringSELECT_REFERENCE"SELECT source, name, url FROM reference WHERE cveid = ?"
    +public static final StringSELECT_SOFTWARE"SELECT cpe, previousVersion FROM software INNER JOIN cpeEntry ON software.cpeEntryId = cpeEntry.id WHERE cveid = ?"
    +public static final StringSELECT_VULNERABILITY"SELECT id, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact FROM vulnerability WHERE cve = ?"
    +public static final StringSELECT_VULNERABILITY_ID"SELECT id FROM vulnerability WHERE cve = ?"
    +public static final StringUPDATE_VULNERABILITY"UPDATE vulnerability SET description=?, cwe=?, cvssScore=?, cvssAccessVector=?, cvssAccessComplexity=?, cvssAuthentication=?, cvssConfidentialityImpact=?, cvssIntegrityImpact=?, cvssAvailabilityImpact=? WHERE id=?"
    + +

    + +

    + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater
    +public static final StringMODIFIED"modified"
    + +

    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.data.nvdcve.xml.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.xml.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.utils.Settings.KEYS
    +public static final StringAUTO_UPDATE"autoupdate"
    +public static final StringCONNECTION_TIMEOUT"connection.timeout"
    +public static final StringCPE_DATA_DIRECTORY"data.cpe"
    +public static final StringCPE_META_URL"cpe.meta.url"
    +public static final StringCPE_URL"cpe.url"
    +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 StringPROXY_PORT"proxy.port"
    +public static final StringPROXY_URL"proxy.url"
    +public static final StringTEMP_DIRECTORY"temp.directory"
    + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/deprecated-list.html b/dependency-check-core/apidocs/deprecated-list.html new file mode 100644 index 000000000..b4b12bdd1 --- /dev/null +++ b/dependency-check-core/apidocs/deprecated-list.html @@ -0,0 +1,211 @@ + + + + + + + +Deprecated List (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents + + + + + + + + + + + + + + + +
    +Deprecated Classes
    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/dependency-check-core/apidocs/help-doc.html b/dependency-check-core/apidocs/help-doc.html new file mode 100644 index 000000000..ce2b86277 --- /dev/null +++ b/dependency-check-core/apidocs/help-doc.html @@ -0,0 +1,224 @@ + + + + + + + +API Help (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/index-all.html b/dependency-check-core/apidocs/index-all.html new file mode 100644 index 000000000..554c9a05c --- /dev/null +++ b/dependency-check-core/apidocs/index-all.html @@ -0,0 +1,4680 @@ + + + + + + + +Index (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +A B C D E F G H I J L M N O P R S T U V
    +

    +A

    +
    +
    AbstractAnalyzer - Class in org.owasp.dependencycheck.analyzer
     
    AbstractAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.AbstractAnalyzer +
      +
    AbstractIndex - Class in org.owasp.dependencycheck.data.lucene
    The base Index for other index objects.
    AbstractIndex() - +Constructor for class org.owasp.dependencycheck.data.lucene.AbstractIndex +
      +
    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. +
    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 +
      +
    addAnalysisException(Exception) - +Method in class org.owasp.dependencycheck.dependency.Dependency +
    Adds an exception to the analysis exceptions collection. +
    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 DownloadFailedException. +
    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.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.data.cpe.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.data.nvdcve.NvdCveAnalyzer +
    Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency. +
    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 works on archive files: + + ZIP - if it is determined to be a JAR, WAR or EAR a copy is made + and the copy is given the correct extension so that it will be correctly + analyzed. + WAR - the WAR contents are extracted and added as dependencies to + the scan.
    ArchiveAnalyzer() - +Constructor for class org.owasp.dependencycheck.analyzer.ArchiveAnalyzer +
      +
    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

    +
    +
    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.data.cpe.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.
    characters(char[], int, int) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +
      +
    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_ORPHANS - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to cleanup orphan entries. +
    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. +
    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.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.data.cpe.CPEAnalyzer +
    Closes the data source. +
    close() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Closes the CPE Index. +
    close() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Closes the DB4O database. +
    close() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Closes the data source. +
    close() - +Method in class org.owasp.dependencycheck.utils.NonClosingStream +
    Prevents closing of the stream. +
    comments - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.License +
      +
    commit() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Commits any pending changes. +
    commit() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    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 +
      +
    convertEntryToDoc(IndexEntry) - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Converts a CPE entry into a Lucene Document. +
    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_DATA_DIRECTORY - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the path where the CPE Lucene Index will be + stored. +
    CPE_META_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to the CPE. +
    CPE_URL - +Static variable in class org.owasp.dependencycheck.utils.Settings.KEYS +
    The properties key for the URL to the CPE. +
    CPEAnalyzer - Class in org.owasp.dependencycheck.data.cpe
    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.data.cpe.CPEAnalyzer +
      +
    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 +
    createIndexingAnalyzer() - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Creates an Analyzer for the CPE Index. +
    createIndexingAnalyzer() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Creates the Lucene Analyzer used when indexing. +
    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>} +
    createQueryParser() - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Creates the Lucene QueryParser used when querying the index. +
    createQueryParser() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Creates the Lucene QueryParser used when querying the index. +
    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 +
    createSearchingAnalyzer() - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Creates an Analyzer for searching the CPE Index. +
    createSearchingAnalyzer() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Creates the Lucene Analyzer used when querying the index. +
    createSite() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory +
    Create an instance of Site +
    createTables() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Creates the database structure (tables and indexes) to store the CVE data +
    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.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_ACCESS_VECTOR - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_AUTHENTICATION - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_AVAILABILITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_CONFIDENTIALITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_INTEGRITY_IMPACT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    CVSS_SCORE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    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(String, Exception) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.DatabaseException +
    Creates an DatabaseException. +
    DatabaseUpdater - Class in org.owasp.dependencycheck.data.nvdcve.xml
     
    DatabaseUpdater() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater +
      +
    DatabaseUpdater.NvdCveUrl - Class in org.owasp.dependencycheck.data.nvdcve.xml
    A pojo that contains the Url and timestamp of the current NvdCve XML + files.
    DatabaseUpdater.NvdCveUrl() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
      +
    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.nvdcve.CveDB +
    The version of the current DB Schema. +
    DB_STRUCTURE_RESOURCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    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. +
    DELETE_REFERENCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to delete references by vulnerability ID. +
    DELETE_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to delete software by vulnerability ID. +
    DELETE_VULNERABILITY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to delete a vulnerability by CVE. +
    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.data.cpe.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 +
      +
    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.xml.NvdCve12Handler +
      +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +
      +
    endElement(String, String, String) - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Indicatees the start of the document. +
    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.xml.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    ENTRY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.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.utils.DependencyVersion +
    Compares the equality of this object to the one passed in as a parameter. +
    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 +
      +
    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. +
    +
    +

    +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 +
      +
    fetchFile(URL, String) - +Static method in class org.owasp.dependencycheck.utils.Downloader +
    Retrieves a file from a given URL and saves it to the outputPath. +
    fetchFile(URL, String, boolean) - +Static method in class org.owasp.dependencycheck.utils.Downloader +
    Retrieves a file from a given URL and saves it to the outputPath. +
    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. +
    fetchFile(URL, File, boolean) - +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 +
      +
    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.data.cpe.CPEAnalyzer +
    Ensures that the Lucene index is closed. +
    finalize() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Cleans up the object and ensures that "close" has been called. +
    finalize() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Ensures that the CVE Database is closed. +
    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.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.data.cpe.CPEAnalyzer +
    Returns the analysis phase that this analyzer should run in. +
    getAnalysisPhase() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Returns the analysis phase that this analyzer should 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. +
    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.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. +
    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. +
    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. +
    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. +
    getCweName(String) - +Static method in class org.owasp.dependencycheck.data.cwe.CweDB +
    Returns the full CWE name from the CWE ID. +
    getDataDirectory() - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory. +
    getDataDirectory() - +Static method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    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. +
    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.data.cpe.Index +
    Returns the directory that holds the CPE Index. +
    getDirectory() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Gets the directory that contains the Lucene Index. +
    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.lucene.AbstractIndex +
    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. +
    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, String) - +Static method in class org.owasp.dependencycheck.utils.Settings +
    Returns a value from the properties file as a File object. +
    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. +
    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. +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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. +
    getIndexingAnalyzer() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Returns an Analyzer to be used when indexing. +
    getIndexSearcher() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Returns an IndexSearcher for the Lucene Index. +
    getIndexWriter() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Retrieves the IndexWriter for the Lucene Index. +
    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.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. +
    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.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.data.cpe.CPEAnalyzer +
    Returns the name of this analyzer. +
    getName() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Returns the name of this 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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    Get the value of needsUpdate. +
    getNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    Gets the value of node. +
    getNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.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. +
    getOldSchemaVersionUrl() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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. +
    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.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. +
    getProperty() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
    Gets the value of the property property. +
    getQueryParser() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Gets a query parser +
    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. +
    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. +
    getSearchingAnalyzer() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Returns an analyzer used for searching the index +
    getSearchScore() - +Method in class org.owasp.dependencycheck.data.cpe.IndexEntry +
    Get the value of searchScore. +
    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 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.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.data.cpe.CPEAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    getSupportedExtensions() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    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. +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    Get the value of timestamp - epoch time. +
    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.xml.NvdCve20Handler +
    Get the value of totalNumberOfApplicationEntries. +
    getTotalNumberOfEntries() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.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. +
    getUpdatePolicy() - +Method in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
    Gets the value of the updatePolicy property. +
    getUrl() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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. +
    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. +
    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.xml.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. +
    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

    +
    +
    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.utils.DependencyVersion +
    Calculates the hashCode for this object. +
    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. +
    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. +
    Index - Class in org.owasp.dependencycheck.data.cpe
    The Index class is used to utilize and maintain the CPE Index.
    Index() - +Constructor for class org.owasp.dependencycheck.data.cpe.Index +
      +
    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 +
      +
    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 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.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.data.cpe.CPEAnalyzer +
    Opens the CPE Lucene Index. +
    initialize() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Opens the NVD CVE Lucene Index. +
    INSERT_CPE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to insert a new cpe. +
    INSERT_REFERENCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to insert a new reference. +
    INSERT_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to insert a new software. +
    INSERT_VULNERABILITY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to insert a new vulnerability. +
    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.xml
    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.xml.InvalidDataException +
    Creates an InvalidDataException. +
    InvalidDataException(String, Exception) - +Constructor for exception org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException +
    Creates an InvalidDataException. +
    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. +
    isCVSSAccessComplexityNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node. +
    isCVSSAccessVectorNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_ACCESS_VECTOR node. +
    isCVSSAuthenticationNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_AUTHENTICATION node. +
    isCVSSAvailabilityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node. +
    isCVSSConfidentialityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node. +
    isCVSSIntegrityImpactNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_INTEGRITY_IMPACT node. +
    isCVSSScoreNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the CVSS_SCORE node. +
    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.xml.NvdCve12Handler.Element +
    Checks if the handler is at the ENTRY node. +
    isEntryNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.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. +
    isNVDNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    Checks if the handler is at the NVD node. +
    isNVDNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the NVD node. +
    isOpen() - +Method in class org.owasp.dependencycheck.data.cpe.CPEAnalyzer +
    Returns the status of the data source - is the index open. +
    isOpen() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Returns the status of the data source - is the index open. +
    isOpen() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Returns the status of the data source - is the database 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.xml.NvdCve12Handler.Element +
    Checks if the handler is at the PROD node. +
    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. +
    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. +
    isVersNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    Checks if the handler is at the VERS node. +
    isVulnCWENode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_CWE node. +
    isVulnProductNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_PRODUCT node. +
    isVulnReferenceNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the REFERENCE node. +
    isVulnReferencesNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the REFERENCES node. +
    isVulnSoftwareNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    Checks if the handler is at the VULN_SOFTWARE node. +
    isVulnSourceNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_SOURCE node. +
    isVulnSummaryNode() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    Checks if the handler is at the VULN_SUMMARY node. +
    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 +
      +
    jdk - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.Activation +
      +
    +
    +

    +L

    +
    +
    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 +
      +
    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. +
    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 +
      +
    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 +
      +
    merge(EvidenceCollection...) - +Static method in class org.owasp.dependencycheck.dependency.EvidenceCollection +
    Merges multiple EvidenceCollections together. +
    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.nvdcve.xml.DatabaseUpdater +
    Modified key word. +
    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. +
    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 +
      +
    NVD - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    NVD - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    NvdCve12Handler - Class in org.owasp.dependencycheck.data.nvdcve.xml
    A SAX Handler that will parse the NVD CVE XML (schema version 1.2).
    NvdCve12Handler() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler +
      +
    NvdCve12Handler.Element - Class in org.owasp.dependencycheck.data.nvdcve.xml
    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.xml.NvdCve12Handler.Element +
      +
    NvdCve20Handler - Class in org.owasp.dependencycheck.data.nvdcve.xml
    A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
    NvdCve20Handler() - +Constructor for class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +
      +
    NvdCve20Handler.Element - Class in org.owasp.dependencycheck.data.nvdcve.xml
    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.xml.NvdCve20Handler.Element +
      +
    NvdCveAnalyzer - Class in org.owasp.dependencycheck.data.nvdcve
    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.data.nvdcve.NvdCveAnalyzer +
      +
    +
    +

    +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 +
    open() - +Method in class org.owasp.dependencycheck.data.cpe.CPEAnalyzer +
    Opens the data source. +
    open() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Opens the CPE Index. +
    open() - +Method in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    Opens the database connection. +
    open() - +Method in class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +
    Opens the data source. +
    openIndexReader() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Opens the Lucene Index for reading. +
    openIndexWriter() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Opens the Lucene Index Writer. +
    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.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.nvdcve.xml - package org.owasp.dependencycheck.data.nvdcve.xml
    + + 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.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. +
    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 +
      +
    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 +
      +
    PROD - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.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 +
      +
    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. +
    +
    +

    +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 +
      +
    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 +
      +
    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 +
      +
    resetSearchingAnalyzer() - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Resets the searching analyzers +
    resetSearchingAnalyzer() - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Resets the searching analyzers +
    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 +
      +
    retrieveCurrentTimestampsFromWeb() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater +
    Retrieves the timestamps from the NVD CVE meta data file. +
    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

    +
    +
    saveEntry(IndexEntry) - +Method in class org.owasp.dependencycheck.data.cpe.Index +
    Saves a CPE IndexEntry into the Lucene index. +
    saveEntry(Vulnerability) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +
    Saves a vulnerability to the CVE Database. +
    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.lucene.AbstractIndex +
    Searches the index using the given search string. +
    search(Query, int) - +Method in class org.owasp.dependencycheck.data.lucene.AbstractIndex +
    Searches the index using the given query. +
    searchCPE(String, String, Set<String>, Set<String>) - +Method in class org.owasp.dependencycheck.data.cpe.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. +
    SELECT_CPE_ENTRIES - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to find the CPE entry based on the vendor and product. +
    SELECT_CPE_ID - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to get a CPEProductID. +
    SELECT_CVE_FROM_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to find CVE entries based on CPE data. +
    SELECT_REFERENCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to select references by CVEID. +
    SELECT_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to select software by CVEID. +
    SELECT_VULNERABILITY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to select a vulnerability by CVEID. +
    SELECT_VULNERABILITY_ID - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to select a vulnerability's primary key. +
    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. +
    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. +
    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. +
    setCveDB(CveDB) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.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. +
    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. +
    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. +
    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. +
    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. +
    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. +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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. +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    Set the value of needsUpdate. +
    setNode(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    Sets the value of node. +
    setNode(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.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. +
    setOldSchemaVersionUrl(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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.xml.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. +
    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. +
    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. +
    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. +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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.nvdcve.xml.DatabaseUpdater.NvdCveUrl +
    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. +
    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. +
    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 +
      +
    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.xml.NvdCve12Handler +
      +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +
      +
    startElement(String, String, String, Attributes) - +Method in class org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter +
    Called when an element is started. +
    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 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.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.data.cpe.CPEAnalyzer +
    Returns true because this analyzer supports all dependency types. +
    supportsExtension(String) - +Method in class org.owasp.dependencycheck.data.nvdcve.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. +
    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.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.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.nvdcve.xml.DatabaseUpdater +
    Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database. +
    UPDATE_VULNERABILITY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.CveDB +
    SQL Statement to update a vulnerability. +
    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. +
    updateNeeded() - +Method in class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater +
    Determines if the index needs to be updated. +
    updatePolicy - +Variable in class org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy +
      +
    UpdateService - Class in org.owasp.dependencycheck.data
     
    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.xml.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.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_PRODUCT - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_REFERENCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_REFERENCES - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_SOFTWARE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +
    A node type in the NVD CVE Schema 1.2. +
    VULN_SOURCE - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +
    A node type in the NVD CVE Schema 2.0 +
    VULN_SUMMARY - +Static variable in class org.owasp.dependencycheck.data.nvdcve.xml.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 +
      +
    VulnerableSoftware - Class in org.owasp.dependencycheck.dependency
    A record containing information about vulnerable software.
    VulnerableSoftware() - +Constructor for class org.owasp.dependencycheck.dependency.VulnerableSoftware +
      +
    +
    +A B C D E F G H I J L M N O P R S T U V + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/index.html b/dependency-check-core/apidocs/index.html new file mode 100644 index 000000000..2cc62fd99 --- /dev/null +++ b/dependency-check-core/apidocs/index.html @@ -0,0 +1,40 @@ + + + + + + + +dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html new file mode 100644 index 000000000..5ea6a72b0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/Engine.html @@ -0,0 +1,576 @@ + + + + + + + +Engine (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html new file mode 100644 index 000000000..deae44a81 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html @@ -0,0 +1,337 @@ + + + + + + + +AbstractAnalyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

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

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.analyzer.AbstractAnalyzer
    +
    +
    +
    All Implemented Interfaces:
    Analyzer
    +
    +
    +
    Direct Known Subclasses:
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html new file mode 100644 index 000000000..31e729915 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisException.html @@ -0,0 +1,305 @@ + + + + + + + +AnalysisException (dependency-check-core 1.0.1 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 DownloadFailedException.
    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 DownloadFailedException. +

    +

    +
    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/analyzer/AnalysisPhase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html new file mode 100644 index 000000000..44d6492eb --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalysisPhase.html @@ -0,0 +1,461 @@ + + + + + + + +AnalysisPhase (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html new file mode 100644 index 000000000..90884175e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/Analyzer.html @@ -0,0 +1,382 @@ + + + + + + + +Analyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

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

    +
    +
    All Known Implementing Classes:
    AbstractAnalyzer, ArchiveAnalyzer, CPEAnalyzer, DependencyBundlingAnalyzer, FalsePositiveAnalyzer, FileNameAnalyzer, HintAnalyzer, JarAnalyzer, JavaScriptAnalyzer, NvdCveAnalyzer
    +
    +
    +
    +
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html new file mode 100644 index 000000000..5873a15ab --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/AnalyzerService.html @@ -0,0 +1,249 @@ + + + + + + + +AnalyzerService (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html new file mode 100644 index 000000000..d8ee4ca18 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -0,0 +1,454 @@ + + + + + + + +ArchiveAnalyzer (dependency-check-core 1.0.1 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 works on archive files: +

      +
    • ZIP - if it is determined to be a JAR, WAR or EAR a copy is made + and the copy is given the correct extension so that it will be correctly + analyzed.
    • +
    • WAR - the WAR contents are extracted and added as dependencies to + the scan. The displayed path is relative to the WAR.
    • +
    • EAR - the WAR contents are extracted and added as dependencies to + the scan. Any WAR files are also processed so that the contained JAR files + are added to the list of dependencies. The displayed path is relative to the + EAR.
    • +

    +

    + +

    +

    +
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..9ac333636 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html @@ -0,0 +1,403 @@ + + + + + + + +DependencyBundlingAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..3670b7ac3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html @@ -0,0 +1,434 @@ + + + + + + + +FalsePositiveAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html new file mode 100644 index 000000000..16e8ad1b4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html @@ -0,0 +1,395 @@ + + + + + + + +FileNameAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html new file mode 100644 index 000000000..41945d0af --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/HintAnalyzer.html @@ -0,0 +1,393 @@ + + + + + + + +HintAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html new file mode 100644 index 000000000..d2c0bc6f1 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.ClassNameInformation.html @@ -0,0 +1,273 @@ + + + + + + + +JarAnalyzer.ClassNameInformation (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html new file mode 100644 index 000000000..223db6e62 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JarAnalyzer.html @@ -0,0 +1,605 @@ + + + + + + + +JarAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html new file mode 100644 index 000000000..4fa6978cb --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html @@ -0,0 +1,443 @@ + + + + + + + +JavaScriptAnalyzer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html new file mode 100644 index 000000000..e7ca313dd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AbstractAnalyzer.html @@ -0,0 +1,245 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AbstractAnalyzer (dependency-check-core 1.0.1 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
    + classArchiveAnalyzer + +
    +          An analyzer that works on archive files: + + ZIP - if it is determined to be a JAR, WAR or EAR a copy is made + and the copy is given the correct extension so that it will be correctly + analyzed. + WAR - the WAR contents are extracted and added as dependencies to + the scan.
    + 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.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html new file mode 100644 index 000000000..a651f4bd2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisException.html @@ -0,0 +1,336 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisException (dependency-check-core 1.0.1 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. 
    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. 
    +  +

    + + + + + +
    +Uses of AnalysisException in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer that throw AnalysisException
    + 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.
    + 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.
    +  +

    + + + + + +
    +Uses of AnalysisException in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that throw AnalysisException
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +  +

    + + + + + +
    +Uses of AnalysisException in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that throw AnalysisException
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html new file mode 100644 index 000000000..abaf2bf0e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalysisPhase.html @@ -0,0 +1,362 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.analyzer.AnalysisPhase (dependency-check-core 1.0.1 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. 
    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. 
    +  +

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

    + + + + + +
    +Uses of AnalysisPhase in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that return AnalysisPhase
    + AnalysisPhaseCPEAnalyzer.getAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    +  +

    + + + + + +
    +Uses of AnalysisPhase in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that return AnalysisPhase
    + AnalysisPhaseNvdCveAnalyzer.getAnalysisPhase() + +
    +          Returns the analysis phase that this analyzer should run in.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html new file mode 100644 index 000000000..f5f07d01a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/Analyzer.html @@ -0,0 +1,415 @@ + + + + + + + +Uses of Interface org.owasp.dependencycheck.analyzer.Analyzer (dependency-check-core 1.0.1 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.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.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 + +
    +           
    + classArchiveAnalyzer + +
    +          An analyzer that works on archive files: + + ZIP - if it is determined to be a JAR, WAR or EAR a copy is made + and the copy is given the correct extension so that it will be correctly + analyzed. + WAR - the WAR contents are extracted and added as dependencies to + the scan.
    + 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.
    +  +

    + + + + + + + + + +
    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.data.cpe
    +  +

    + + + + + + + + + +
    Classes in org.owasp.dependencycheck.data.cpe that implement Analyzer
    + classCPEAnalyzer + +
    +          CPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE.
    +  +

    + + + + + +
    +Uses of Analyzer in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Classes in org.owasp.dependencycheck.data.nvdcve that implement Analyzer
    + classNvdCveAnalyzer + +
    +          NvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs.
    +  +

    + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/AnalyzerService.html new file mode 100644 index 000000000..7c26f768f --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/ArchiveAnalyzer.html new file mode 100644 index 000000000..82a852dda --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..7e0b69c72 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..8f33d0686 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/FileNameAnalyzer.html new file mode 100644 index 000000000..42b15fcd4 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/HintAnalyzer.html new file mode 100644 index 000000000..dc20b5e45 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.ClassNameInformation.html new file mode 100644 index 000000000..3207275ec --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JarAnalyzer.html new file mode 100644 index 000000000..314176fa0 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/class-use/JavaScriptAnalyzer.html new file mode 100644 index 000000000..ae4fdb3f0 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..5acafd258 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,84 @@ + + + + + + + +org.owasp.dependencycheck.analyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.analyzer + + + + +
    +Interfaces  + +
    +Analyzer
    + + + + + + +
    +Classes  + +
    +AbstractAnalyzer +
    +AnalyzerService +
    +ArchiveAnalyzer +
    +DependencyBundlingAnalyzer +
    +FalsePositiveAnalyzer +
    +FileNameAnalyzer +
    +HintAnalyzer +
    +JarAnalyzer +
    +JarAnalyzer.ClassNameInformation +
    +JavaScriptAnalyzer
    + + + + + + +
    +Enums  + +
    +AnalysisPhase
    + + + + + + +
    +Exceptions  + +
    +AnalysisException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..b5bf9b03b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,275 @@ + + + + + + + +org.owasp.dependencycheck.analyzer (dependency-check-core 1.0.1 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 
    AnalyzerService 
    ArchiveAnalyzerAn analyzer that works on archive files: + + ZIP - if it is determined to be a JAR, WAR or EAR a copy is made + and the copy is given the correct extension so that it will be correctly + analyzed. + WAR - the WAR contents are extracted and added as dependencies to + the scan.
    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.
    +  + +

    + + + + + + + + + +
    +Enum Summary
    AnalysisPhaseAn enumeration defining the phases of analysis.
    +  + +

    + + + + + + + + + +
    +Exception Summary
    AnalysisExceptionAn exception thrown when the analysis of a dependency fails.
    +  + +

    +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html new file mode 100644 index 000000000..26e7866e1 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-tree.html @@ -0,0 +1,183 @@ + + + + + + + +org.owasp.dependencycheck.analyzer Class Hierarchy (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html new file mode 100644 index 000000000..a20c6fcbd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/analyzer/package-use.html @@ -0,0 +1,333 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.analyzer (dependency-check-core 1.0.1 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.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.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 + +
    +           
    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.data.cpe
    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.
    +  +

    + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.analyzer used by org.owasp.dependencycheck.data.nvdcve
    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.
    +  +

    + + + + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html new file mode 100644 index 000000000..3f0361b04 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/class-use/Engine.html @@ -0,0 +1,327 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.Engine (dependency-check-core 1.0.1 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.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. 
    +  +

    + + + + + +
    +Uses of Engine in org.owasp.dependencycheck.analyzer
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.analyzer with parameters of type Engine
    + 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.
    + 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.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe with parameters of type Engine
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +  +

    + + + + + +
    +Uses of Engine in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve with parameters of type Engine
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html new file mode 100644 index 000000000..4d0ac25bf --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/CachedWebDataSource.html @@ -0,0 +1,229 @@ + + + + + + + +CachedWebDataSource (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html new file mode 100644 index 000000000..a1d5224c3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateException.html @@ -0,0 +1,306 @@ + + + + + + + +UpdateException (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html new file mode 100644 index 000000000..54e28c83e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/UpdateService.html @@ -0,0 +1,251 @@ + + + + + + + +UpdateService (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/CachedWebDataSource.html new file mode 100644 index 000000000..f0f487a68 --- /dev/null +++ b/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.1 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.nvdcve.xml + + 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.nvdcve.xml
    +  +

    + + + + + + + + + +
    Classes in org.owasp.dependencycheck.data.nvdcve.xml that implement CachedWebDataSource
    + classDatabaseUpdater + +
    +           
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html new file mode 100644 index 000000000..0ef49b728 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateException.html @@ -0,0 +1,230 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.UpdateException (dependency-check-core 1.0.1 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.nvdcve.xml + + 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.nvdcve.xml
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that throw UpdateException
    + voidDatabaseUpdater.update() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.updateNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/class-use/UpdateService.html new file mode 100644 index 000000000..038ca4701 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html new file mode 100644 index 000000000..46740f75a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html @@ -0,0 +1,631 @@ + + + + + + + +CPEAnalyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class CPEAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.cpe.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 source.
    +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.
    +protected  voidfinalize() + +
    +          Ensures that the Lucene index 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 CPE Lucene Index.
    + booleanisOpen() + +
    +          Returns the status of the data source - is the index open.
    + 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, 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 source. +

    +

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

    +isOpen

    +
    +public boolean isOpen()
    +
    +
    Returns the status of the data source - is the index open. +

    +

    +
    +
    +
    + +
    Returns:
    true or false.
    +
    +
    +
    + +

    +finalize

    +
    +protected void finalize()
    +                 throws Throwable
    +
    +
    Ensures that the Lucene index is closed. +

    +

    +
    Overrides:
    finalize in class Object
    +
    +
    + +
    Throws: +
    Throwable - when a throwable is thrown.
    +
    +
    +
    + +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html new file mode 100644 index 000000000..83e95947b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Fields.html @@ -0,0 +1,312 @@ + + + + + + + +Fields (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Index.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Index.html new file mode 100644 index 000000000..d755f353e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/Index.html @@ -0,0 +1,454 @@ + + + + + + + +Index (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.cpe +
    +Class Index

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.lucene.AbstractIndex
    +      extended by org.owasp.dependencycheck.data.cpe.Index
    +
    +
    +
    +
    public class Index
    extends AbstractIndex
    + + +

    +The Index class is used to utilize and maintain the CPE Index. +

    + +

    +

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

    + + + + + + + + + + + +
    +Constructor Summary
    Index() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  org.apache.lucene.document.DocumentconvertEntryToDoc(IndexEntry entry) + +
    +          Converts a CPE entry into a Lucene Document.
    + org.apache.lucene.analysis.AnalyzercreateIndexingAnalyzer() + +
    +          Creates an Analyzer for the CPE Index.
    + org.apache.lucene.queryparser.classic.QueryParsercreateQueryParser() + +
    +          Creates the Lucene QueryParser used when querying the index.
    + org.apache.lucene.analysis.AnalyzercreateSearchingAnalyzer() + +
    +          Creates an Analyzer for searching the CPE Index.
    + FilegetDataDirectory() + +
    +          Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory.
    + org.apache.lucene.store.DirectorygetDirectory() + +
    +          Returns the directory that holds the CPE Index.
    +protected  voidresetSearchingAnalyzer() + +
    +          Resets the searching analyzers
    + voidsaveEntry(IndexEntry entry) + +
    +          Saves a CPE IndexEntry into the Lucene index.
    + + + + + + + +
    Methods inherited from class org.owasp.dependencycheck.data.lucene.AbstractIndex
    close, commit, getDocument, getIndexingAnalyzer, getIndexSearcher, getIndexWriter, getQueryParser, getSearchingAnalyzer, isOpen, open, openIndexReader, openIndexWriter, search, search
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

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

    +Index

    +
    +public Index()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDirectory

    +
    +public org.apache.lucene.store.Directory getDirectory()
    +                                               throws IOException
    +
    +
    Returns the directory that holds the CPE Index. +

    +

    +
    Specified by:
    getDirectory in class AbstractIndex
    +
    +
    + +
    Returns:
    the Directory containing the CPE Index. +
    Throws: +
    IOException - is thrown if an IOException occurs.
    +
    +
    +
    + +

    +getDataDirectory

    +
    +public 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...
    +
    +
    +
    + +

    +createIndexingAnalyzer

    +
    +public org.apache.lucene.analysis.Analyzer createIndexingAnalyzer()
    +
    +
    Creates an Analyzer for the CPE Index. +

    +

    +
    Specified by:
    createIndexingAnalyzer in class AbstractIndex
    +
    +
    + +
    Returns:
    the CPE Analyzer.
    +
    +
    +
    + +

    +createSearchingAnalyzer

    +
    +public org.apache.lucene.analysis.Analyzer createSearchingAnalyzer()
    +
    +
    Creates an Analyzer for searching the CPE Index. +

    +

    +
    Specified by:
    createSearchingAnalyzer in class AbstractIndex
    +
    +
    + +
    Returns:
    the CPE Analyzer.
    +
    +
    +
    + +

    +createQueryParser

    +
    +public org.apache.lucene.queryparser.classic.QueryParser createQueryParser()
    +
    +
    Creates the Lucene QueryParser used when querying the index. +

    +

    +
    Specified by:
    createQueryParser in class AbstractIndex
    +
    +
    + +
    Returns:
    a QueryParser.
    +
    +
    +
    + +

    +resetSearchingAnalyzer

    +
    +protected void resetSearchingAnalyzer()
    +
    +
    Resets the searching analyzers +

    +

    +
    Specified by:
    resetSearchingAnalyzer in class AbstractIndex
    +
    +
    +
    +
    +
    +
    + +

    +saveEntry

    +
    +public void saveEntry(IndexEntry entry)
    +               throws org.apache.lucene.index.CorruptIndexException,
    +                      IOException
    +
    +
    Saves a CPE IndexEntry into the Lucene index. +

    +

    +
    Parameters:
    entry - a CPE entry. +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the index is corrupt. +
    IOException - is thrown if an IOException occurs.
    +
    +
    +
    + +

    +convertEntryToDoc

    +
    +protected org.apache.lucene.document.Document convertEntryToDoc(IndexEntry entry)
    +
    +
    Converts a CPE entry into a Lucene Document. +

    +

    +
    Parameters:
    entry - a CPE IndexEntry. +
    Returns:
    a Lucene Document containing a CPE IndexEntry.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html new file mode 100644 index 000000000..5f8e74c23 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/IndexEntry.html @@ -0,0 +1,550 @@ + + + + + + + +IndexEntry (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CPEAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CPEAnalyzer.html new file mode 100644 index 000000000..d2e70b1d1 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/CPEAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.CPEAnalyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.CPEAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.cpe.CPEAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Fields.html new file mode 100644 index 000000000..b2e43a535 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Index.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Index.html new file mode 100644 index 000000000..48a6a8381 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/Index.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.Index (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.Index

    +
    +No usage of org.owasp.dependencycheck.data.cpe.Index +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html new file mode 100644 index 000000000..2a7c4f913 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/class-use/IndexEntry.html @@ -0,0 +1,248 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.cpe.IndexEntry (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.cpe.IndexEntry

    +
    + + + + + + + + + + + + + +
    +Packages that use IndexEntry
    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. 
    +  +

    + + + + + +
    +Uses of IndexEntry in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe 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.
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe with parameters of type IndexEntry
    +protected  org.apache.lucene.document.DocumentIndex.convertEntryToDoc(IndexEntry entry) + +
    +          Converts a CPE entry into a Lucene Document.
    + voidIndex.saveEntry(IndexEntry entry) + +
    +          Saves a CPE IndexEntry into the Lucene index.
    +  +

    + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..5969c683a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,39 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.cpe + + + + +
    +Classes  + +
    +CPEAnalyzer +
    +Fields +
    +Index +
    +IndexEntry
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..a50fcc30f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,199 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe (dependency-check-core 1.0.1 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
    CPEAnalyzerCPEAnalyzer is a utility class that takes a project dependency and attempts + to discern if there is an associated CPE.
    FieldsFields is a collection of field names used within the Lucene index for CPE + entries.
    IndexThe Index class is used to utilize and maintain the CPE Index.
    IndexEntryA CPE entry containing the name, vendor, product, and version.
    +  + +

    +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html new file mode 100644 index 000000000..199c275f7 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-tree.html @@ -0,0 +1,158 @@ + + + + + + + +org.owasp.dependencycheck.data.cpe Class Hierarchy (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html new file mode 100644 index 000000000..1757344d6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cpe/package-use.html @@ -0,0 +1,200 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.cpe (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.cpe

    +
    + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.cpe
    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.data.cpe
    IndexEntry + +
    +          A CPE entry containing the name, vendor, product, and version.
    +  +

    + + + + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html new file mode 100644 index 000000000..9e4b9b9f6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweDB.html @@ -0,0 +1,227 @@ + + + + + + + +CweDB (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html new file mode 100644 index 000000000..e8b43ab47 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/CweHandler.html @@ -0,0 +1,308 @@ + + + + + + + +CweHandler (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweDB.html new file mode 100644 index 000000000..335cb4ea0 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/class-use/CweHandler.html new file mode 100644 index 000000000..cee3e1dc8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..7f5f4b4f3 --- /dev/null +++ b/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.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.cwe + + + + +
    +Classes  + +
    +CweDB +
    +CweHandler
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..fdcba8597 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-tree.html new file mode 100644 index 000000000..f55286679 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/cwe/package-use.html new file mode 100644 index 000000000..3fb0439d2 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractIndex.html new file mode 100644 index 000000000..ecd4843e0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractIndex.html @@ -0,0 +1,705 @@ + + + + + + + +AbstractIndex (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.lucene +
    +Class AbstractIndex

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.lucene.AbstractIndex
    +
    +
    +
    Direct Known Subclasses:
    Index
    +
    +
    +
    +
    public abstract class AbstractIndex
    extends Object
    + + +

    +The base Index for other index objects. Implements the open and close + methods. +

    + +

    +

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

    + + + + + + + + + + + +
    +Constructor Summary
    AbstractIndex() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidclose() + +
    +          Closes the CPE Index.
    + voidcommit() + +
    +          Commits any pending changes.
    +abstract  org.apache.lucene.analysis.AnalyzercreateIndexingAnalyzer() + +
    +          Creates the Lucene Analyzer used when indexing.
    +abstract  org.apache.lucene.queryparser.classic.QueryParsercreateQueryParser() + +
    +          Creates the Lucene QueryParser used when querying the index.
    +abstract  org.apache.lucene.analysis.AnalyzercreateSearchingAnalyzer() + +
    +          Creates the Lucene Analyzer used when querying the index.
    +abstract  org.apache.lucene.store.DirectorygetDirectory() + +
    +          Gets the directory that contains the Lucene Index.
    + org.apache.lucene.document.DocumentgetDocument(int documentId) + +
    +          Retrieves a document from the Index.
    + org.apache.lucene.analysis.AnalyzergetIndexingAnalyzer() + +
    +          Returns an Analyzer to be used when indexing.
    +protected  org.apache.lucene.search.IndexSearchergetIndexSearcher() + +
    +          Returns an IndexSearcher for the Lucene Index.
    + org.apache.lucene.index.IndexWritergetIndexWriter() + +
    +          Retrieves the IndexWriter for the Lucene Index.
    +protected  org.apache.lucene.queryparser.classic.QueryParsergetQueryParser() + +
    +          Gets a query parser
    +protected  org.apache.lucene.analysis.AnalyzergetSearchingAnalyzer() + +
    +          Returns an analyzer used for searching the index
    + booleanisOpen() + +
    +          Returns the status of the data source - is the index open.
    + voidopen() + +
    +          Opens the CPE Index.
    + voidopenIndexReader() + +
    +          Opens the Lucene Index for reading.
    + voidopenIndexWriter() + +
    +          Opens the Lucene Index Writer.
    +protected abstract  voidresetSearchingAnalyzer() + +
    +          Resets the searching analyzers
    + 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
    +  +

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

    +AbstractIndex

    +
    +public AbstractIndex()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +open

    +
    +public void open()
    +          throws IOException
    +
    +
    Opens the CPE Index. +

    +

    + +
    Throws: +
    IOException - is thrown if an IOException occurs opening the index.
    +
    +
    +
    + +

    +commit

    +
    +public void commit()
    +
    +
    Commits any pending changes. +

    +

    +
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the CPE Index. +

    +

    +
    +
    +
    +
    + +

    +isOpen

    +
    +public boolean isOpen()
    +
    +
    Returns the status of the data source - is the index open. +

    +

    + +
    Returns:
    true or false.
    +
    +
    +
    + +

    +openIndexWriter

    +
    +public void openIndexWriter()
    +                     throws org.apache.lucene.index.CorruptIndexException,
    +                            IOException
    +
    +
    Opens the Lucene Index Writer. +

    +

    + +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the Lucene index is corrupt. +
    IOException - is thrown if an IOException occurs opening the index.
    +
    +
    +
    + +

    +getIndexWriter

    +
    +public org.apache.lucene.index.IndexWriter getIndexWriter()
    +                                                   throws org.apache.lucene.index.CorruptIndexException,
    +                                                          org.apache.lucene.store.LockObtainFailedException,
    +                                                          IOException
    +
    +
    Retrieves the IndexWriter for the Lucene Index. +

    +

    + +
    Returns:
    an IndexWriter. +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the Lucene Index is corrupt. +
    org.apache.lucene.store.LockObtainFailedException - is thrown if there is an exception + obtaining a lock on the Lucene index. +
    IOException - is thrown if an IOException occurs opening the index.
    +
    +
    +
    + +

    +openIndexReader

    +
    +public void openIndexReader()
    +                     throws org.apache.lucene.index.CorruptIndexException,
    +                            IOException
    +
    +
    Opens the Lucene Index for reading. +

    +

    + +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the index is corrupt. +
    IOException - is thrown if there is an exception reading the index.
    +
    +
    +
    + +

    +getIndexSearcher

    +
    +protected org.apache.lucene.search.IndexSearcher getIndexSearcher()
    +                                                           throws org.apache.lucene.index.CorruptIndexException,
    +                                                                  IOException
    +
    +
    Returns an IndexSearcher for the Lucene Index. +

    +

    + +
    Returns:
    an IndexSearcher. +
    Throws: +
    org.apache.lucene.index.CorruptIndexException - is thrown if the index is corrupt. +
    IOException - is thrown if there is an exception reading the index.
    +
    +
    +
    + +

    +getIndexingAnalyzer

    +
    +public org.apache.lucene.analysis.Analyzer getIndexingAnalyzer()
    +
    +
    Returns an Analyzer to be used when indexing. +

    +

    + +
    Returns:
    an Analyzer.
    +
    +
    +
    + +

    +getSearchingAnalyzer

    +
    +protected org.apache.lucene.analysis.Analyzer getSearchingAnalyzer()
    +
    +
    Returns an analyzer used for searching the index +

    +

    + +
    Returns:
    a lucene analyzer
    +
    +
    +
    + +

    +getQueryParser

    +
    +protected org.apache.lucene.queryparser.classic.QueryParser getQueryParser()
    +
    +
    Gets a query parser +

    +

    + +
    Returns:
    a query parser
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

    +getDirectory

    +
    +public abstract org.apache.lucene.store.Directory getDirectory()
    +                                                        throws IOException
    +
    +
    Gets the directory that contains the Lucene Index. +

    +

    + +
    Returns:
    a Lucene Directory +
    Throws: +
    IOException - is thrown when an IOException occurs
    +
    +
    +
    + +

    +createIndexingAnalyzer

    +
    +public abstract org.apache.lucene.analysis.Analyzer createIndexingAnalyzer()
    +
    +
    Creates the Lucene Analyzer used when indexing. +

    +

    + +
    Returns:
    a Lucene Analyzer
    +
    +
    +
    + +

    +createSearchingAnalyzer

    +
    +public abstract org.apache.lucene.analysis.Analyzer createSearchingAnalyzer()
    +
    +
    Creates the Lucene Analyzer used when querying the index. +

    +

    + +
    Returns:
    a Lucene Analyzer
    +
    +
    +
    + +

    +createQueryParser

    +
    +public abstract org.apache.lucene.queryparser.classic.QueryParser createQueryParser()
    +
    +
    Creates the Lucene QueryParser used when querying the index. +

    +

    + +
    Returns:
    a QueryParser
    +
    +
    +
    + +

    +resetSearchingAnalyzer

    +
    +protected abstract void resetSearchingAnalyzer()
    +
    +
    Resets the searching analyzers +

    +

    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html new file mode 100644 index 000000000..1d7024b77 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html @@ -0,0 +1,386 @@ + + + + + + + +AbstractTokenizingFilter (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html new file mode 100644 index 000000000..24852210b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html @@ -0,0 +1,367 @@ + + + + + + + +AlphaNumericTokenizer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html new file mode 100644 index 000000000..7aec5c856 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html @@ -0,0 +1,329 @@ + + + + + + + +DependencySimilarity (dependency-check-core 1.0.1 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.ExactSimScorer, org.apache.lucene.search.similarities.Similarity.SimWeight, org.apache.lucene.search.similarities.Similarity.SloppySimScorer
    +  + + + + + + + +
    +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, getDiscountOverlaps, lengthNorm, queryNorm, scorePayload, setDiscountOverlaps, sloppyFreq, tf, toString
    + + + + + + + +
    Methods inherited from class org.apache.lucene.search.similarities.TFIDFSimilarity
    computeNorm, computeWeight, decodeNormValue, encodeNormValue, exactSimScorer, idfExplain, idfExplain, sloppySimScorer, tf
    + + + + + + + +
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html new file mode 100644 index 000000000..e3142c784 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html @@ -0,0 +1,307 @@ + + + + + + + +FieldAnalyzer (dependency-check-core 1.0.1 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
    +  + + + + + + + + + + + +
    +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, initReader, 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html new file mode 100644 index 000000000..10717af03 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/LuceneUtils.html @@ -0,0 +1,259 @@ + + + + + + + +LuceneUtils (dependency-check-core 1.0.1 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)
    +
    +
    + +

    + + + + + + + + + + + + + + + + +
    +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
    +  +

    + + + + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html new file mode 100644 index 000000000..56d09a516 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html @@ -0,0 +1,330 @@ + + + + + + + +SearchFieldAnalyzer (dependency-check-core 1.0.1 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
    +  + + + + + + + + + + + +
    +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, initReader, 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html new file mode 100644 index 000000000..8b691c9fa --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html @@ -0,0 +1,309 @@ + + + + + + + +SearchVersionAnalyzer (dependency-check-core 1.0.1 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
    +  + + + + + + + + + + + +
    +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, initReader, 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..546a2cf55 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html @@ -0,0 +1,367 @@ + + + + + + + +TokenPairConcatenatingFilter (dependency-check-core 1.0.1 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.
    + 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
    + +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html new file mode 100644 index 000000000..7a0035dc4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html @@ -0,0 +1,352 @@ + + + + + + + +UrlTokenizingFilter (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html new file mode 100644 index 000000000..a1e5b0e5f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html @@ -0,0 +1,308 @@ + + + + + + + +VersionAnalyzer (dependency-check-core 1.0.1 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
    +  + + + + + + + + + + + +
    +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, initReader, 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html new file mode 100644 index 000000000..640933ebd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html @@ -0,0 +1,355 @@ + + + + + + + +VersionTokenizingFilter (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractIndex.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractIndex.html new file mode 100644 index 000000000..d73f4aa41 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractIndex.html @@ -0,0 +1,186 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.lucene.AbstractIndex (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.lucene.AbstractIndex

    +
    + + + + + + + + + +
    +Packages that use AbstractIndex
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    +  +

    + + + + + +
    +Uses of AbstractIndex in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Subclasses of AbstractIndex in org.owasp.dependencycheck.data.cpe
    + classIndex + +
    +          The Index class is used to utilize and maintain the CPE Index.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AbstractTokenizingFilter.html new file mode 100644 index 000000000..c45f1adce --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/AlphaNumericTokenizer.html new file mode 100644 index 000000000..829848a24 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/DependencySimilarity.html new file mode 100644 index 000000000..561cb8ab5 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/FieldAnalyzer.html new file mode 100644 index 000000000..e4fce6f12 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/LuceneUtils.html new file mode 100644 index 000000000..35eb1978b --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchFieldAnalyzer.html new file mode 100644 index 000000000..741244afe --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/SearchVersionAnalyzer.html new file mode 100644 index 000000000..f48ddb985 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..ae37965e8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/UrlTokenizingFilter.html new file mode 100644 index 000000000..d43c047c7 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionAnalyzer.html new file mode 100644 index 000000000..d500c1259 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/class-use/VersionTokenizingFilter.html new file mode 100644 index 000000000..2e3b33495 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..e2940c149 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,55 @@ + + + + + + + +org.owasp.dependencycheck.data.lucene (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.lucene + + + + +
    +Classes  + +
    +AbstractIndex +
    +AbstractTokenizingFilter +
    +AlphaNumericTokenizer +
    +DependencySimilarity +
    +FieldAnalyzer +
    +LuceneUtils +
    +SearchFieldAnalyzer +
    +SearchVersionAnalyzer +
    +TokenPairConcatenatingFilter +
    +UrlTokenizingFilter +
    +VersionAnalyzer +
    +VersionTokenizingFilter
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..ce618f4b2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,235 @@ + + + + + + + +org.owasp.dependencycheck.data.lucene (dependency-check-core 1.0.1 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
    AbstractIndexThe base Index for other index objects.
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-tree.html new file mode 100644 index 000000000..30ce4fec0 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html new file mode 100644 index 000000000..6847356e6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/lucene/package-use.html @@ -0,0 +1,201 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.lucene (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.lucene

    +
    + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.lucene
    org.owasp.dependencycheck.data.cpe + + org.owasp.dependencycheck.data.cpe + + + Contains classes for working with the CPE Lucene Index. 
    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.cpe
    AbstractIndex + +
    +          The base Index for other index objects.
    +  +

    + + + + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html new file mode 100644 index 000000000..2f7da6b4b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/CveDB.html @@ -0,0 +1,883 @@ + + + + + + + +CveDB (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class CveDB

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.CveDB
    +
    +
    +
    +
    public class CveDB
    extends Object
    + + +

    +The database holding information about the NVD CVE data. +

    + +

    +

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

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    +static StringCLEANUP_ORPHANS + +
    +          SQL Statement to cleanup orphan entries.
    +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.
    +static StringDELETE_REFERENCE + +
    +          SQL Statement to delete references by vulnerability ID.
    +static StringDELETE_SOFTWARE + +
    +          SQL Statement to delete software by vulnerability ID.
    +static StringDELETE_VULNERABILITY + +
    +          SQL Statement to delete a vulnerability by CVE.
    +static StringINSERT_CPE + +
    +          SQL Statement to insert a new cpe.
    +static StringINSERT_REFERENCE + +
    +          SQL Statement to insert a new reference.
    +static StringINSERT_SOFTWARE + +
    +          SQL Statement to insert a new software.
    +static StringINSERT_VULNERABILITY + +
    +          SQL Statement to insert a new vulnerability.
    +static StringSELECT_CPE_ENTRIES + +
    +          SQL Statement to find the CPE entry based on the vendor and product.
    +static StringSELECT_CPE_ID + +
    +          SQL Statement to get a CPEProductID.
    +static StringSELECT_CVE_FROM_SOFTWARE + +
    +          SQL Statement to find CVE entries based on CPE data.
    +static StringSELECT_REFERENCE + +
    +          SQL Statement to select references by CVEID.
    +static StringSELECT_SOFTWARE + +
    +          SQL Statement to select software by CVEID.
    +static StringSELECT_VULNERABILITY + +
    +          SQL Statement to select a vulnerability by CVEID.
    +static StringSELECT_VULNERABILITY_ID + +
    +          SQL Statement to select a vulnerability's primary key.
    +static StringUPDATE_VULNERABILITY + +
    +          SQL Statement to update a vulnerability.
    +  + + + + + + + + + + +
    +Constructor Summary
    CveDB() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidcleanupDatabase() + +
    +          It is possible that orphaned rows may be generated during database + updates.
    + voidclose() + +
    +          Closes the DB4O database.
    + voidcommit() + +
    +          Commits all completed transactions.
    +protected  voidcreateTables() + +
    +          Creates the database structure (tables and indexes) to store the CVE data
    +protected  voidfinalize() + +
    +          Cleans up the object and ensures that "close" has been called.
    + 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.
    +static FilegetDataDirectory() + +
    +          Retrieves the directory that the JAR file exists in so that we can ensure + we always use a common data directory.
    + List<Vulnerability>getVulnerabilities(String cpeStr) + +
    +          Retrieves the vulnerabilities associated with the specified CPE.
    + voidopen() + +
    +          Opens the database connection.
    + voidupdateVulnerability(Vulnerability vuln) + +
    +          Updates the vulnerability within the database.
    + + + + + + + +
    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
    +
    +
    + +

    +DELETE_REFERENCE

    +
    +public static final String DELETE_REFERENCE
    +
    +
    SQL Statement to delete references by vulnerability ID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DELETE_SOFTWARE

    +
    +public static final String DELETE_SOFTWARE
    +
    +
    SQL Statement to delete software by vulnerability ID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +DELETE_VULNERABILITY

    +
    +public static final String DELETE_VULNERABILITY
    +
    +
    SQL Statement to delete a vulnerability by CVE. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CLEANUP_ORPHANS

    +
    +public static final String CLEANUP_ORPHANS
    +
    +
    SQL Statement to cleanup orphan entries. Yes, the db schema could be a + little tighter, but what we have works well to keep the data file size + down a bit. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +INSERT_REFERENCE

    +
    +public static final String INSERT_REFERENCE
    +
    +
    SQL Statement to insert a new reference. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +INSERT_SOFTWARE

    +
    +public static final String INSERT_SOFTWARE
    +
    +
    SQL Statement to insert a new software. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +INSERT_CPE

    +
    +public static final String INSERT_CPE
    +
    +
    SQL Statement to insert a new cpe. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_CPE_ID

    +
    +public static final String SELECT_CPE_ID
    +
    +
    SQL Statement to get a CPEProductID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +INSERT_VULNERABILITY

    +
    +public static final String INSERT_VULNERABILITY
    +
    +
    SQL Statement to insert a new vulnerability. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +UPDATE_VULNERABILITY

    +
    +public static final String UPDATE_VULNERABILITY
    +
    +
    SQL Statement to update a vulnerability. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_CVE_FROM_SOFTWARE

    +
    +public static final String SELECT_CVE_FROM_SOFTWARE
    +
    +
    SQL Statement to find CVE entries based on CPE data. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_CPE_ENTRIES

    +
    +public static final String SELECT_CPE_ENTRIES
    +
    +
    SQL Statement to find the CPE entry based on the vendor and product. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_REFERENCE

    +
    +public static final String SELECT_REFERENCE
    +
    +
    SQL Statement to select references by CVEID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_SOFTWARE

    +
    +public static final String SELECT_SOFTWARE
    +
    +
    SQL Statement to select software by CVEID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_VULNERABILITY

    +
    +public static final String SELECT_VULNERABILITY
    +
    +
    SQL Statement to select a vulnerability by CVEID. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +SELECT_VULNERABILITY_ID

    +
    +public static final String SELECT_VULNERABILITY_ID
    +
    +
    SQL Statement to select a vulnerability's primary key. +

    +

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

    +CveDB

    +
    +public CveDB()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +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
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

    +close

    +
    +public void close()
    +
    +
    Closes the DB4O database. Close should be called on this object when it + is done being used. +

    +

    +
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

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

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

    +

    +
    +
    +
    +
    + +

    +createTables

    +
    +protected void createTables()
    +                     throws SQLException,
    +                            DatabaseException
    +
    +
    Creates the database structure (tables and indexes) to store the CVE data +

    +

    + +
    Throws: +
    SQLException - thrown if there is a sql exception +
    DatabaseException - thrown if there is a database exception
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html new file mode 100644 index 000000000..d33e9a9d0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html @@ -0,0 +1,271 @@ + + + + + + + +DatabaseException (dependency-check-core 1.0.1 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, + Exception 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(String msg,
    +                         Exception 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html new file mode 100644 index 000000000..666519a30 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html @@ -0,0 +1,516 @@ + + + + + + + +NvdCveAnalyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve +
    +Class NvdCveAnalyzer

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html new file mode 100644 index 000000000..390975fb6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/CveDB.html @@ -0,0 +1,185 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.CveDB (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.CveDB

    +
    + + + + + + + + + +
    +Packages that use CveDB
    org.owasp.dependencycheck.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of CveDB in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml with parameters of type CveDB
    + voidNvdCve20Handler.setCveDB(CveDB db) + +
    +          Sets the cveDB.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html new file mode 100644 index 000000000..f794e3d3d --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/DatabaseException.html @@ -0,0 +1,285 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.DatabaseException (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.DatabaseException

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use DatabaseException
    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.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data.cpe
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe that throw DatabaseException
    + voidCPEAnalyzer.open() + +
    +          Opens the data source.
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve that throw DatabaseException
    +protected  voidCveDB.createTables() + +
    +          Creates the database structure (tables and indexes) to store the CVE data
    + List<Vulnerability>CveDB.getVulnerabilities(String cpeStr) + +
    +          Retrieves the vulnerabilities associated with the specified CPE.
    + voidNvdCveAnalyzer.open() + +
    +          Opens the data source.
    + voidCveDB.open() + +
    +          Opens the database connection.
    + voidCveDB.updateVulnerability(Vulnerability vuln) + +
    +          Updates the vulnerability within the database.
    +  +

    + + + + + +
    +Uses of DatabaseException in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that throw DatabaseException
    + voidNvdCve20Handler.saveEntry(Vulnerability vuln) + +
    +          Saves a vulnerability to the CVE Database.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCveAnalyzer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCveAnalyzer.html new file mode 100644 index 000000000..35263fb6f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/class-use/NvdCveAnalyzer.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..dd791aff3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,46 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.nvdcve + + + + +
    +Classes  + +
    +CveDB +
    +NvdCveAnalyzer
    + + + + + + +
    +Exceptions  + +
    +DatabaseException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..9c0776853 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,204 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve (dependency-check-core 1.0.1 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.
    NvdCveAnalyzerNvdCveAnalyzer is a utility class that takes a project dependency and + attempts to discern if there is an associated CVEs.
    +  + +

    + + + + + + + + + +
    +Exception Summary
    DatabaseExceptionAn exception thrown if an operation against the database fails.
    +  + +

    +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html new file mode 100644 index 000000000..8b8969dc3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-tree.html @@ -0,0 +1,160 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve Class Hierarchy (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html new file mode 100644 index 000000000..c20982c81 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/package-use.html @@ -0,0 +1,229 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.nvdcve (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.nvdcve

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.nvdcve
    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.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.cpe
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.nvdcve
    DatabaseException + +
    +          An exception thrown if an operation against the database fails.
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve used by org.owasp.dependencycheck.data.nvdcve.xml
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.NvdCveUrl.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.NvdCveUrl.html new file mode 100644 index 000000000..b51216929 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.NvdCveUrl.html @@ -0,0 +1,459 @@ + + + + + + + +DatabaseUpdater.NvdCveUrl (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class DatabaseUpdater.NvdCveUrl

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl
    +
    +
    +
    Enclosing class:
    DatabaseUpdater
    +
    +
    +
    +
    protected static class DatabaseUpdater.NvdCveUrl
    extends Object
    + + +

    +A pojo that contains the Url and timestamp of the current NvdCve XML + files. +

    + +

    +


    + +

    + + + + + + + + + + + + +
    +Constructor Summary
    +protected DatabaseUpdater.NvdCveUrl() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +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
    + +

    +DatabaseUpdater.NvdCveUrl

    +
    +protected DatabaseUpdater.NvdCveUrl()
    +
    +
    + + + + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html new file mode 100644 index 000000000..31fa1d5e9 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html @@ -0,0 +1,402 @@ + + + + + + + +DatabaseUpdater (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class DatabaseUpdater

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater
    +
    +
    +
    All Implemented Interfaces:
    CachedWebDataSource
    +
    +
    +
    +
    public class DatabaseUpdater
    extends Object
    implements CachedWebDataSource
    + + +

    +

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

    + + + + + + + + + + + +
    +Nested Class Summary
    +protected static classDatabaseUpdater.NvdCveUrl + +
    +          A pojo that contains the Url and timestamp of the current NvdCve XML + files.
    + + + + + + + + + + +
    +Field Summary
    +static StringMODIFIED + +
    +          Modified key word.
    +  + + + + + + + + + + +
    +Constructor Summary
    DatabaseUpdater() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  Map<String,DatabaseUpdater.NvdCveUrl>retrieveCurrentTimestampsFromWeb() + +
    +          Retrieves the timestamps from the NVD CVE meta data file.
    + voidupdate() + +
    +          Downloads the latest NVD CVE XML file from the web and imports it into + the current CVE Database.
    + Map<String,DatabaseUpdater.NvdCveUrl>updateNeeded() + +
    +          Determines if the index needs to be updated.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

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

    +MODIFIED

    +
    +public static final String MODIFIED
    +
    +
    Modified key word. +

    +

    +
    See Also:
    Constant Field Values
    +
    + + + + + + + + +
    +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
    +
    +
    +
    + +

    +updateNeeded

    +
    +public Map<String,DatabaseUpdater.NvdCveUrl> updateNeeded()
    +                                                   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. +

    +

    +
    +
    +
    + +
    Returns:
    the NvdCveUrl of the 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.
    +
    +
    +
    + +

    +retrieveCurrentTimestampsFromWeb

    +
    +protected Map<String,DatabaseUpdater.NvdCveUrl> retrieveCurrentTimestampsFromWeb()
    +                                                                          throws MalformedURLException,
    +                                                                                 DownloadFailedException,
    +                                                                                 InvalidDataException,
    +                                                                                 InvalidSettingException
    +
    +
    Retrieves the timestamps from the NVD CVE meta data file. +

    +

    +
    +
    +
    + +
    Returns:
    the timestamp from the currently published nvdcve downloads page +
    Throws: +
    MalformedURLException - thrown if the URL for the NVD CCE Meta data + is incorrect. +
    DownloadFailedException - thrown if there is an error downloading + the nvd cve meta data file +
    InvalidDataException - thrown if there is an exception parsing the + timestamps +
    InvalidSettingException - thrown if the settings are invalid
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html new file mode 100644 index 000000000..e7f5a7613 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html @@ -0,0 +1,272 @@ + + + + + + + +InvalidDataException (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class InvalidDataException

    +
    +java.lang.Object
    +  extended by java.lang.Throwable
    +      extended by java.lang.Exception
    +          extended by org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.Element.html new file mode 100644 index 000000000..7c215230c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.Element.html @@ -0,0 +1,515 @@ + + + + + + + +NvdCve12Handler.Element (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class NvdCve12Handler.Element

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html new file mode 100644 index 000000000..14708aa97 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html @@ -0,0 +1,359 @@ + + + + + + + +NvdCve12Handler (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class NvdCve12Handler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.Element.html new file mode 100644 index 000000000..cfcad1914 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.Element.html @@ -0,0 +1,935 @@ + + + + + + + +NvdCve20Handler.Element (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class NvdCve20Handler.Element

    +
    +java.lang.Object
    +  extended by org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html new file mode 100644 index 000000000..0528c04a2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html @@ -0,0 +1,480 @@ + + + + + + + +NvdCve20Handler (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.data.nvdcve.xml +
    +Class NvdCve20Handler

    +
    +java.lang.Object
    +  extended by org.xml.sax.helpers.DefaultHandler
    +      extended by org.owasp.dependencycheck.data.nvdcve.xml.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.
    + voidsaveEntry(Vulnerability vuln) + +
    +          Saves a vulnerability to the CVE Database.
    + 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
    +
    +
    +
    + +

    +saveEntry

    +
    +public void saveEntry(Vulnerability vuln)
    +               throws DatabaseException,
    +                      org.apache.lucene.index.CorruptIndexException,
    +                      IOException
    +
    +
    Saves a vulnerability to the CVE Database. This is a callback method + called by the Sax Parser Handler + NvdCve20Handler. +

    +

    +
    Parameters:
    vuln - the vulnerability to store in the database +
    Throws: +
    DatabaseException - thrown if there is an error writing to the + database +
    org.apache.lucene.index.CorruptIndexException - is thrown if the CPE Index is corrupt +
    IOException - thrown if there is an IOException with the CPE Index
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.NvdCveUrl.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.NvdCveUrl.html new file mode 100644 index 000000000..6ba3bb408 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.NvdCveUrl.html @@ -0,0 +1,193 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.NvdCveUrl

    +
    + + + + + + + + + +
    +Packages that use DatabaseUpdater.NvdCveUrl
    org.owasp.dependencycheck.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of DatabaseUpdater.NvdCveUrl in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that return types with arguments of type DatabaseUpdater.NvdCveUrl
    +protected  Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.retrieveCurrentTimestampsFromWeb() + +
    +          Retrieves the timestamps from the NVD CVE meta data file.
    + Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.updateNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.html new file mode 100644 index 000000000..ac855ad01 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/DatabaseUpdater.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/InvalidDataException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/InvalidDataException.html new file mode 100644 index 000000000..d58609567 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/InvalidDataException.html @@ -0,0 +1,185 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException

    +
    + + + + + + + + + +
    +Packages that use InvalidDataException
    org.owasp.dependencycheck.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + +
    +Uses of InvalidDataException in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that throw InvalidDataException
    +protected  Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.retrieveCurrentTimestampsFromWeb() + +
    +          Retrieves the timestamps from the NVD CVE meta data file.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.Element.html new file mode 100644 index 000000000..edd3dcd67 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.Element.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.Element +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.html new file mode 100644 index 000000000..bb71cb590 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve12Handler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.Element.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.Element.html new file mode 100644 index 000000000..8c4177118 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.Element.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.Element +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.html new file mode 100644 index 000000000..964c24e6a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/class-use/NvdCve20Handler.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler

    +
    +No usage of org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html new file mode 100644 index 000000000..9574bf05c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html @@ -0,0 +1,54 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve.xml (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data.nvdcve.xml + + + + +
    +Classes  + +
    +DatabaseUpdater +
    +DatabaseUpdater.NvdCveUrl +
    +NvdCve12Handler +
    +NvdCve12Handler.Element +
    +NvdCve20Handler +
    +NvdCve20Handler.Element
    + + + + + + +
    +Exceptions  + +
    +InvalidDataException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html new file mode 100644 index 000000000..2d4e3a88b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html @@ -0,0 +1,228 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve.xml (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.data.nvdcve.xml +

    + + + org.owasp.dependencycheck.data.nvdcve.xml + + +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    DatabaseUpdater 
    DatabaseUpdater.NvdCveUrlA pojo that contains the Url and timestamp of the current NvdCve XML + files.
    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
    InvalidDataExceptionAn InvalidDataDataException is a generic exception used when trying to load + the nvd cve meta data.
    +  + +

    +

    +Package org.owasp.dependencycheck.data.nvdcve.xml 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-tree.html new file mode 100644 index 000000000..083f7992e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-tree.html @@ -0,0 +1,163 @@ + + + + + + + +org.owasp.dependencycheck.data.nvdcve.xml Class Hierarchy (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck.data.nvdcve.xml +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-use.html new file mode 100644 index 000000000..1a71f9913 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/nvdcve/xml/package-use.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data.nvdcve.xml (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.data.nvdcve.xml

    +
    + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.data.nvdcve.xml
    org.owasp.dependencycheck.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    +  +

    + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.data.nvdcve.xml used by org.owasp.dependencycheck.data.nvdcve.xml
    DatabaseUpdater.NvdCveUrl + +
    +          A pojo that contains the Url and timestamp of the current NvdCve XML + files.
    InvalidDataException + +
    +          An InvalidDataDataException is a generic exception used when trying to load + the nvd cve meta data.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html new file mode 100644 index 000000000..8d424d711 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-frame.html @@ -0,0 +1,55 @@ + + + + + + + +org.owasp.dependencycheck.data (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.data + + + + +
    +Interfaces  + +
    +CachedWebDataSource
    + + + + + + +
    +Classes  + +
    +UpdateService
    + + + + + + +
    +Exceptions  + +
    +UpdateException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html new file mode 100644 index 000000000..853d6829d --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-summary.html @@ -0,0 +1,213 @@ + + + + + + + +org.owasp.dependencycheck.data (dependency-check-core 1.0.1 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
    UpdateService 
    +  + +

    + + + + + + + + + +
    +Exception Summary
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-tree.html new file mode 100644 index 000000000..8587ef2db --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html new file mode 100644 index 000000000..26e7e8598 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/data/package-use.html @@ -0,0 +1,217 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.data (dependency-check-core 1.0.1 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.xml + + 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.xml
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html new file mode 100644 index 000000000..2d9d7800e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Dependency.html @@ -0,0 +1,1214 @@ + + + + + + + +Dependency (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html new file mode 100644 index 000000000..ea65dee30 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.Confidence.html @@ -0,0 +1,370 @@ + + + + + + + +Evidence.Confidence (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html new file mode 100644 index 000000000..e66f37d17 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Evidence.html @@ -0,0 +1,635 @@ + + + + + + + +Evidence (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html new file mode 100644 index 000000000..2865775d4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/EvidenceCollection.html @@ -0,0 +1,673 @@ + + + + + + + +EvidenceCollection (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html new file mode 100644 index 000000000..9f2133521 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Identifier.html @@ -0,0 +1,564 @@ + + + + + + + +Identifier (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html new file mode 100644 index 000000000..77b949e86 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Reference.html @@ -0,0 +1,462 @@ + + + + + + + +Reference (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html new file mode 100644 index 000000000..7b753d0c9 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/Vulnerability.html @@ -0,0 +1,1033 @@ + + + + + + + +Vulnerability (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html new file mode 100644 index 000000000..155f4b817 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html @@ -0,0 +1,281 @@ + + + + + + + +VulnerabilityComparator (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html new file mode 100644 index 000000000..abe50b894 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/VulnerableSoftware.html @@ -0,0 +1,688 @@ + + + + + + + +VulnerableSoftware (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html new file mode 100644 index 000000000..cf686e342 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Dependency.html @@ -0,0 +1,507 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Dependency (dependency-check-core 1.0.1 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.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.dependency + + org.owasp.dependencycheck.dependency + + + Contains the core Dependency implementation. 
    org.owasp.dependencycheck.reporting + + org.owasp.dependencycheck.reporting + + + Contains classes used to generate reports. 
    +  +

    + + + + + +
    +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
    + 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.
    + 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  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.data.cpe
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.cpe with parameters of type Dependency
    + voidCPEAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +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.
    +  +

    + + + + + +
    +Uses of Dependency in org.owasp.dependencycheck.data.nvdcve
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve with parameters of type Dependency
    + voidNvdCveAnalyzer.analyze(Dependency dependency, + Engine engine) + +
    +          Analyzes a dependency and attempts to determine if there are any CPE + identifiers for this dependency.
    +  +

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

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.Confidence.html new file mode 100644 index 000000000..6ef3eadec --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Evidence.html new file mode 100644 index 000000000..0198fa530 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/EvidenceCollection.html new file mode 100644 index 000000000..9e00b50f8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Identifier.html new file mode 100644 index 000000000..e60ae132e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Reference.html new file mode 100644 index 000000000..55479571e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html new file mode 100644 index 000000000..757730731 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/Vulnerability.html @@ -0,0 +1,318 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.Vulnerability (dependency-check-core 1.0.1 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.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    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.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml with parameters of type Vulnerability
    + voidNvdCve20Handler.saveEntry(Vulnerability vuln) + +
    +          Saves a vulnerability to the CVE 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerabilityComparator.html new file mode 100644 index 000000000..12ef91932 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html new file mode 100644 index 000000000..de41958a5 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/class-use/VulnerableSoftware.html @@ -0,0 +1,311 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.dependency.VulnerableSoftware (dependency-check-core 1.0.1 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.data.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    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.
    +  +

    + + + + + +
    +Uses of VulnerableSoftware in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that return types with arguments of type VulnerableSoftware
    + Map<String,List<VulnerableSoftware>>NvdCve12Handler.getVulnerabilities() + +
    +          Get the value of vulnerabilities.
    +  +

    + + + + + + + + + +
    Method parameters in org.owasp.dependencycheck.data.nvdcve.xml 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..b834de8bb --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,58 @@ + + + + + + + +org.owasp.dependencycheck.dependency (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.dependency + + + + +
    +Classes  + +
    +Dependency +
    +Evidence +
    +EvidenceCollection +
    +Identifier +
    +Reference +
    +Vulnerability +
    +VulnerabilityComparator +
    +VulnerableSoftware
    + + + + + + +
    +Enums  + +
    +Evidence.Confidence
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..257af9a8a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,227 @@ + + + + + + + +org.owasp.dependencycheck.dependency (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-tree.html new file mode 100644 index 000000000..85bfd83a3 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html new file mode 100644 index 000000000..0a6a81b98 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/dependency/package-use.html @@ -0,0 +1,380 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.dependency (dependency-check-core 1.0.1 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.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.nvdcve.xml + + org.owasp.dependencycheck.data.nvdcve.xml + +  
    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. 
    +  +

    + + + + + + + + +
    +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.cpe
    Dependency + +
    +          A program dependency.
    +  +

    + + + + + + + + + + + + + + +
    +Classes in org.owasp.dependencycheck.dependency used by org.owasp.dependencycheck.data.nvdcve
    Dependency + +
    +          A program dependency.
    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.data.nvdcve.xml
    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.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html new file mode 100644 index 000000000..85c871450 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html @@ -0,0 +1,377 @@ + + + + + + + +MavenNamespaceFilter (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/class-use/MavenNamespaceFilter.html new file mode 100644 index 000000000..792f9e902 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html new file mode 100644 index 000000000..e1bcdb88a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html @@ -0,0 +1,641 @@ + + + + + + + +Activation (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html new file mode 100644 index 000000000..1c4a88a61 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html @@ -0,0 +1,423 @@ + + + + + + + +ActivationFile (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html new file mode 100644 index 000000000..2ea9463c0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html @@ -0,0 +1,568 @@ + + + + + + + +ActivationOS (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html new file mode 100644 index 000000000..024f8104f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html @@ -0,0 +1,423 @@ + + + + + + + +ActivationProperty (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html new file mode 100644 index 000000000..10ce6d263 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Extensions.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Extensions (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html new file mode 100644 index 000000000..e9e155b0f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Filters.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Filters (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html new file mode 100644 index 000000000..ea8140daf --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Plugins (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html new file mode 100644 index 000000000..2567625ba --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.Resources.html @@ -0,0 +1,338 @@ + + + + + + + +Build.Resources (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html new file mode 100644 index 000000000..9c08ef781 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.TestResources.html @@ -0,0 +1,338 @@ + + + + + + + +Build.TestResources (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html new file mode 100644 index 000000000..56bc569a8 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Build.html @@ -0,0 +1,1395 @@ + + + + + + + +Build (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html new file mode 100644 index 000000000..2c9545dd3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Filters.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Filters (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html new file mode 100644 index 000000000..f9d42f9d0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Plugins (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html new file mode 100644 index 000000000..2330d2150 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.Resources.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.Resources (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html new file mode 100644 index 000000000..5e17c182a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.TestResources.html @@ -0,0 +1,338 @@ + + + + + + + +BuildBase.TestResources (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html new file mode 100644 index 000000000..e32473916 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html @@ -0,0 +1,939 @@ + + + + + + + +BuildBase (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html new file mode 100644 index 000000000..1d9c25f18 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.Notifiers.html @@ -0,0 +1,338 @@ + + + + + + + +CiManagement.Notifiers (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html new file mode 100644 index 000000000..7e1f717f4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html @@ -0,0 +1,520 @@ + + + + + + + +CiManagement (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html new file mode 100644 index 000000000..e1f614e2a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Contributor.Properties (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html new file mode 100644 index 000000000..83784bebd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.Roles.html @@ -0,0 +1,338 @@ + + + + + + + +Contributor.Roles (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html new file mode 100644 index 000000000..5530a7f1a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html @@ -0,0 +1,906 @@ + + + + + + + +Contributor (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html new file mode 100644 index 000000000..02ef03986 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.Exclusions.html @@ -0,0 +1,338 @@ + + + + + + + +Dependency.Exclusions (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html new file mode 100644 index 000000000..6f7b8aaff --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html @@ -0,0 +1,958 @@ + + + + + + + +Dependency (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html new file mode 100644 index 000000000..a77d7fdba --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +DependencyManagement.Dependencies (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html new file mode 100644 index 000000000..d7bbc1333 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html @@ -0,0 +1,375 @@ + + + + + + + +DependencyManagement (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html new file mode 100644 index 000000000..204123f13 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html @@ -0,0 +1,640 @@ + + + + + + + +DeploymentRepository (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html new file mode 100644 index 000000000..d138b8b21 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Developer.Properties (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html new file mode 100644 index 000000000..4c3c5600b --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.Roles.html @@ -0,0 +1,338 @@ + + + + + + + +Developer.Roles (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html new file mode 100644 index 000000000..2bd7c7b7a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html @@ -0,0 +1,977 @@ + + + + + + + +Developer (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html new file mode 100644 index 000000000..f74298bb6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html @@ -0,0 +1,715 @@ + + + + + + + +DistributionManagement (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html new file mode 100644 index 000000000..ca82a8c19 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html @@ -0,0 +1,420 @@ + + + + + + + +Exclusion (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html new file mode 100644 index 000000000..3506051e6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html @@ -0,0 +1,493 @@ + + + + + + + +Extension (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html new file mode 100644 index 000000000..1c90188cf --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html @@ -0,0 +1,421 @@ + + + + + + + +IssueManagement (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html new file mode 100644 index 000000000..1bb988585 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/License.html @@ -0,0 +1,569 @@ + + + + + + + +License (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html new file mode 100644 index 000000000..67b79316a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.OtherArchives.html @@ -0,0 +1,338 @@ + + + + + + + +MailingList.OtherArchives (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html new file mode 100644 index 000000000..bdd373c9c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html @@ -0,0 +1,741 @@ + + + + + + + +MailingList (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html new file mode 100644 index 000000000..192720171 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Contributors.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Contributors (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html new file mode 100644 index 000000000..66feb4f16 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Dependencies (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html new file mode 100644 index 000000000..a9d5d4c86 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Developers.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Developers (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html new file mode 100644 index 000000000..14152e7a6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Licenses.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Licenses (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html new file mode 100644 index 000000000..8f174f71a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.MailingLists.html @@ -0,0 +1,338 @@ + + + + + + + +Model.MailingLists (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html new file mode 100644 index 000000000..eb4a4e6aa --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Modules.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Modules (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html new file mode 100644 index 000000000..3eab9adc3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.PluginRepositories.html @@ -0,0 +1,338 @@ + + + + + + + +Model.PluginRepositories (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html new file mode 100644 index 000000000..7ffc2b944 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Profiles.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Profiles (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html new file mode 100644 index 000000000..c9ae5597e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Properties (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html new file mode 100644 index 000000000..6cac1321a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Reports (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html new file mode 100644 index 000000000..b602db035 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.Repositories.html @@ -0,0 +1,338 @@ + + + + + + + +Model.Repositories (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html new file mode 100644 index 000000000..bd738e86c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Model.html @@ -0,0 +1,2673 @@ + + + + + + + +Model (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html new file mode 100644 index 000000000..147027c91 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +Notifier.Configuration (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html new file mode 100644 index 000000000..bc9cfbe04 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html @@ -0,0 +1,813 @@ + + + + + + + +Notifier (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html new file mode 100644 index 000000000..489eed438 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html @@ -0,0 +1,2056 @@ + + + + + + + +ObjectFactory (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html new file mode 100644 index 000000000..f2db34ca6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html @@ -0,0 +1,420 @@ + + + + + + + +Organization (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html new file mode 100644 index 000000000..04d690341 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html @@ -0,0 +1,566 @@ + + + + + + + +Parent (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html new file mode 100644 index 000000000..a03dadda1 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Configuration (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html new file mode 100644 index 000000000..bb57de621 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Dependencies (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html new file mode 100644 index 000000000..73afb21e4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Executions.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Executions (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html new file mode 100644 index 000000000..273c13006 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.Goals.html @@ -0,0 +1,338 @@ + + + + + + + +Plugin.Goals (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html new file mode 100644 index 000000000..80b4123b2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html @@ -0,0 +1,1012 @@ + + + + + + + +Plugin (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html new file mode 100644 index 000000000..fd32624f2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +PluginExecution.Configuration (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html new file mode 100644 index 000000000..1dfa297fb --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.Goals.html @@ -0,0 +1,338 @@ + + + + + + + +PluginExecution.Goals (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html new file mode 100644 index 000000000..72b1f7109 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html @@ -0,0 +1,684 @@ + + + + + + + +PluginExecution (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html new file mode 100644 index 000000000..d9a93b7e7 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +PluginManagement.Plugins (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html new file mode 100644 index 000000000..c868035b2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html @@ -0,0 +1,375 @@ + + + + + + + +PluginManagement (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html new file mode 100644 index 000000000..1b760f528 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html @@ -0,0 +1,347 @@ + + + + + + + +Prerequisites (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html new file mode 100644 index 000000000..96efbe1dd --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Dependencies.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Dependencies (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html new file mode 100644 index 000000000..e8bc1b9e4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Modules.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Modules (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html new file mode 100644 index 000000000..cea0431d9 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.PluginRepositories.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.PluginRepositories (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html new file mode 100644 index 000000000..1f4719255 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Properties.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Properties (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html new file mode 100644 index 000000000..eeb4f0592 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Reports (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html new file mode 100644 index 000000000..31307e4c9 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.Repositories.html @@ -0,0 +1,338 @@ + + + + + + + +Profile.Repositories (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html new file mode 100644 index 000000000..e6df24f22 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html @@ -0,0 +1,1268 @@ + + + + + + + +Profile (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html new file mode 100644 index 000000000..dedbbc741 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html @@ -0,0 +1,567 @@ + + + + + + + +Relocation (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html new file mode 100644 index 000000000..9e28e3b3a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +ReportPlugin.Configuration (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html new file mode 100644 index 000000000..a74064622 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.ReportSets.html @@ -0,0 +1,338 @@ + + + + + + + +ReportPlugin.ReportSets (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html new file mode 100644 index 000000000..cb1c677e6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html @@ -0,0 +1,757 @@ + + + + + + + +ReportPlugin (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html new file mode 100644 index 000000000..914faa6a8 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Configuration.html @@ -0,0 +1,338 @@ + + + + + + + +ReportSet.Configuration (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html new file mode 100644 index 000000000..66e2dcdc6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.Reports.html @@ -0,0 +1,338 @@ + + + + + + + +ReportSet.Reports (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html new file mode 100644 index 000000000..11b08ea2e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html @@ -0,0 +1,611 @@ + + + + + + + +ReportSet (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html new file mode 100644 index 000000000..79859cf06 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.Plugins.html @@ -0,0 +1,338 @@ + + + + + + + +Reporting.Plugins (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html new file mode 100644 index 000000000..d8bd04da3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html @@ -0,0 +1,520 @@ + + + + + + + +Reporting (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html new file mode 100644 index 000000000..b5fa46d0e --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html @@ -0,0 +1,713 @@ + + + + + + + +Repository (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html new file mode 100644 index 000000000..81b3c24e9 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html @@ -0,0 +1,493 @@ + + + + + + + +RepositoryPolicy (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html new file mode 100644 index 000000000..da4943e82 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Excludes.html @@ -0,0 +1,338 @@ + + + + + + + +Resource.Excludes (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html new file mode 100644 index 000000000..fc6e3f491 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.Includes.html @@ -0,0 +1,338 @@ + + + + + + + +Resource.Includes (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html new file mode 100644 index 000000000..88a1ae46f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html @@ -0,0 +1,686 @@ + + + + + + + +Resource (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html new file mode 100644 index 000000000..5baf996e7 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html @@ -0,0 +1,566 @@ + + + + + + + +Scm (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html new file mode 100644 index 000000000..059c743bf --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/Site.html @@ -0,0 +1,494 @@ + + + + + + + +Site (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Activation.html new file mode 100644 index 000000000..86cf2a36e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationFile.html new file mode 100644 index 000000000..86274f64e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationOS.html new file mode 100644 index 000000000..a4310079a --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ActivationProperty.html new file mode 100644 index 000000000..dd73803b8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Extensions.html new file mode 100644 index 000000000..1c83e6ab8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Filters.html new file mode 100644 index 000000000..144cb2ef4 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Plugins.html new file mode 100644 index 000000000..0da355c20 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.Resources.html new file mode 100644 index 000000000..03d8b1a2c --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.TestResources.html new file mode 100644 index 000000000..6a1394514 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Build.html new file mode 100644 index 000000000..0196dab66 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Filters.html new file mode 100644 index 000000000..b1309852e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Plugins.html new file mode 100644 index 000000000..222fd9880 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.Resources.html new file mode 100644 index 000000000..aeca494f4 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.TestResources.html new file mode 100644 index 000000000..95386f333 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/BuildBase.html new file mode 100644 index 000000000..85699f37e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.Notifiers.html new file mode 100644 index 000000000..f88003f58 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/CiManagement.html new file mode 100644 index 000000000..830219a2a --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Properties.html new file mode 100644 index 000000000..075bcb052 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.Roles.html new file mode 100644 index 000000000..650fbae3f --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Contributor.html new file mode 100644 index 000000000..86725fc17 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.Exclusions.html new file mode 100644 index 000000000..221585f9c --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Dependency.html new file mode 100644 index 000000000..37455da04 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.Dependencies.html new file mode 100644 index 000000000..fa4a5d049 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DependencyManagement.html new file mode 100644 index 000000000..f968b57b3 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DeploymentRepository.html new file mode 100644 index 000000000..6d37602b9 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Properties.html new file mode 100644 index 000000000..e7427505f --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.Roles.html new file mode 100644 index 000000000..f661e041e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Developer.html new file mode 100644 index 000000000..97651e1e7 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/DistributionManagement.html new file mode 100644 index 000000000..b53c9328b --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Exclusion.html new file mode 100644 index 000000000..272937d0a --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Extension.html new file mode 100644 index 000000000..56a01a5e6 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/IssueManagement.html new file mode 100644 index 000000000..97241eebd --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/License.html new file mode 100644 index 000000000..2817b2866 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.OtherArchives.html new file mode 100644 index 000000000..4e153ac78 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/MailingList.html new file mode 100644 index 000000000..54c994eb3 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Contributors.html new file mode 100644 index 000000000..efb82f9ab --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Dependencies.html new file mode 100644 index 000000000..ef992ebc3 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Developers.html new file mode 100644 index 000000000..78b108682 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Licenses.html new file mode 100644 index 000000000..e4865a7d9 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.MailingLists.html new file mode 100644 index 000000000..6dc4b8d44 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Modules.html new file mode 100644 index 000000000..937b46bcc --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.PluginRepositories.html new file mode 100644 index 000000000..25c44a09e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Profiles.html new file mode 100644 index 000000000..b99ccba78 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Properties.html new file mode 100644 index 000000000..970a748da --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Reports.html new file mode 100644 index 000000000..b0ad45856 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.Repositories.html new file mode 100644 index 000000000..fdfd29060 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Model.html new file mode 100644 index 000000000..acc07fe2c --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.Configuration.html new file mode 100644 index 000000000..78658eccd --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Notifier.html new file mode 100644 index 000000000..8d698ff6d --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ObjectFactory.html new file mode 100644 index 000000000..8807a08b2 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Organization.html new file mode 100644 index 000000000..b150b33e0 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Parent.html new file mode 100644 index 000000000..33898e051 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Configuration.html new file mode 100644 index 000000000..b77133fdb --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Dependencies.html new file mode 100644 index 000000000..736eff90c --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Executions.html new file mode 100644 index 000000000..8297120d1 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.Goals.html new file mode 100644 index 000000000..abc6d39dd --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Plugin.html new file mode 100644 index 000000000..c779b6720 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Configuration.html new file mode 100644 index 000000000..69eaa60a7 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.Goals.html new file mode 100644 index 000000000..086d73a34 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginExecution.html new file mode 100644 index 000000000..3516068db --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.Plugins.html new file mode 100644 index 000000000..5d827a3e3 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/PluginManagement.html new file mode 100644 index 000000000..3ed4f3888 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Prerequisites.html new file mode 100644 index 000000000..2d98bb6cf --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Dependencies.html new file mode 100644 index 000000000..18e35ffe4 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Modules.html new file mode 100644 index 000000000..9ad12aa73 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.PluginRepositories.html new file mode 100644 index 000000000..e84dc246b --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Properties.html new file mode 100644 index 000000000..ad70226d6 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Reports.html new file mode 100644 index 000000000..049210cf1 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.Repositories.html new file mode 100644 index 000000000..962dc50ac --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Profile.html new file mode 100644 index 000000000..688c2c490 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Relocation.html new file mode 100644 index 000000000..b63cc0a9d --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.Configuration.html new file mode 100644 index 000000000..c5cc7350c --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.ReportSets.html new file mode 100644 index 000000000..bc970e247 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportPlugin.html new file mode 100644 index 000000000..7e6af47cf --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Configuration.html new file mode 100644 index 000000000..3d19f4041 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.Reports.html new file mode 100644 index 000000000..1430f7fde --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/ReportSet.html new file mode 100644 index 000000000..150826538 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.Plugins.html new file mode 100644 index 000000000..958722f07 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Reporting.html new file mode 100644 index 000000000..8de4b34d9 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Repository.html new file mode 100644 index 000000000..be5202d64 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/RepositoryPolicy.html new file mode 100644 index 000000000..e535b1834 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Excludes.html new file mode 100644 index 000000000..0b80683a1 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.Includes.html new file mode 100644 index 000000000..dbda43f1d --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Resource.html new file mode 100644 index 000000000..e53ebca41 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Scm.html new file mode 100644 index 000000000..2af1e10c6 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/class-use/Site.html new file mode 100644 index 000000000..9d574c48f --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html new file mode 100644 index 000000000..737872c0d --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html new file mode 100644 index 000000000..6ab244367 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-tree.html new file mode 100644 index 000000000..b5a3ebe6b --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/generated/package-use.html new file mode 100644 index 000000000..971c9cf9e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-frame.html new file mode 100644 index 000000000..4b2cf7b43 --- /dev/null +++ b/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.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.jaxb.pom + + + + +
    +Classes  + +
    +MavenNamespaceFilter
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-summary.html new file mode 100644 index 000000000..a7eaffada --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-tree.html new file mode 100644 index 000000000..d33faff35 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/jaxb/pom/package-use.html new file mode 100644 index 000000000..9bfa4a5e6 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..c28e15a53 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +org.owasp.dependencycheck (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck + + + + +
    +Classes  + +
    +Engine
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..35873b2f2 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,185 @@ + + + + + + + +org.owasp.dependencycheck (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html new file mode 100644 index 000000000..869b2f24f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-tree.html @@ -0,0 +1,154 @@ + + + + + + + +org.owasp.dependencycheck Class Hierarchy (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package org.owasp.dependencycheck +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html new file mode 100644 index 000000000..d946df3db --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/package-use.html @@ -0,0 +1,225 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck (dependency-check-core 1.0.1 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.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. 
    +  +

    + + + + + + + + +
    +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.data.cpe
    Engine + +
    +          Scans files, directories, etc.
    +  +

    + + + + + + + + +
    +Classes in org.owasp.dependencycheck used by org.owasp.dependencycheck.data.nvdcve
    Engine + +
    +          Scans files, directories, etc.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html new file mode 100644 index 000000000..ba6770aa1 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.Format.html @@ -0,0 +1,370 @@ + + + + + + + +ReportGenerator.Format (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html new file mode 100644 index 000000000..fd13e6b82 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/ReportGenerator.html @@ -0,0 +1,358 @@ + + + + + + + +ReportGenerator (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html new file mode 100644 index 000000000..a81faf2f0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html @@ -0,0 +1,379 @@ + + + + + + + +VelocityLoggerRedirect (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.Format.html new file mode 100644 index 000000000..ee0ce3b04 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/ReportGenerator.html new file mode 100644 index 000000000..443843730 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/class-use/VelocityLoggerRedirect.html new file mode 100644 index 000000000..aab692049 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..dce95c175 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,46 @@ + + + + + + + +org.owasp.dependencycheck.reporting (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.reporting + + + + +
    +Classes  + +
    +ReportGenerator +
    +VelocityLoggerRedirect
    + + + + + + +
    +Enums  + +
    +ReportGenerator.Format
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..95d500cc3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,205 @@ + + + + + + + +org.owasp.dependencycheck.reporting (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-tree.html new file mode 100644 index 000000000..3d9224bb8 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/reporting/package-use.html new file mode 100644 index 000000000..3e659fc6f --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html new file mode 100644 index 000000000..6452d8cd6 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Checksum.html @@ -0,0 +1,358 @@ + + + + + + + +Checksum (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html new file mode 100644 index 000000000..ac414d25c --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersion.html @@ -0,0 +1,501 @@ + + + + + + + +DependencyVersion (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html new file mode 100644 index 000000000..afd908d0d --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DependencyVersionUtil.html @@ -0,0 +1,240 @@ + + + + + + + +DependencyVersionUtil (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html new file mode 100644 index 000000000..25af082f4 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/DownloadFailedException.html @@ -0,0 +1,306 @@ + + + + + + + +DownloadFailedException (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html new file mode 100644 index 000000000..e6d309072 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Downloader.html @@ -0,0 +1,351 @@ + + + + + + + +Downloader (dependency-check-core 1.0.1 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 voidfetchFile(URL url, + File outputPath, + boolean unzip) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static voidfetchFile(URL url, + String outputPath) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static voidfetchFile(URL url, + String outputPath, + boolean unzip) + +
    +          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,
    +                             String 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.
    +
    +
    +
    + +

    +fetchFile

    +
    +public static void fetchFile(URL url,
    +                             String outputPath,
    +                             boolean unzip)
    +                      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.
    unzip - true/false indicating that the file being retrieved is + gzipped and if true, should be uncompressed before writing to the file. +
    Throws: +
    DownloadFailedException - is thrown if there is an error + downloading the file.
    +
    +
    +
    + +

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

    +fetchFile

    +
    +public static void fetchFile(URL url,
    +                             File outputPath,
    +                             boolean unzip)
    +                      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.
    unzip - true/false indicating that the file being retrieved is + gzipped and if true, should be uncompressed before writing to the file. +
    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. +

    +

    +
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html new file mode 100644 index 000000000..988f9547f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/FileUtils.html @@ -0,0 +1,325 @@ + + + + + + + +FileUtils (dependency-check-core 1.0.1 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 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.
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html new file mode 100644 index 000000000..3f376879a --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Filter.html @@ -0,0 +1,291 @@ + + + + + + + +Filter (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html new file mode 100644 index 000000000..112eb0771 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/InvalidSettingException.html @@ -0,0 +1,306 @@ + + + + + + + +InvalidSettingException (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html new file mode 100644 index 000000000..9e6bbce23 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/NonClosingStream.html @@ -0,0 +1,304 @@ + + + + + + + +NonClosingStream (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html new file mode 100644 index 000000000..a10eea0b0 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.KEYS.html @@ -0,0 +1,617 @@ + + + + + + + +Settings.KEYS (dependency-check-core 1.0.1 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 StringCONNECTION_TIMEOUT + +
    +          The properties key for the connection timeout.
    +static StringCPE_DATA_DIRECTORY + +
    +          The properties key for the path where the CPE Lucene Index will be + stored.
    +static StringCPE_META_URL + +
    +          The properties key for the URL to the CPE.
    +static StringCPE_URL + +
    +          The properties key for the URL to the CPE.
    +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 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 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
    +
    +
    + +

    +CPE_DATA_DIRECTORY

    +
    +public static final String CPE_DATA_DIRECTORY
    +
    +
    The properties key for the path where the CPE Lucene Index will be + stored. +

    +

    +
    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
    +
    +
    + +

    +CPE_URL

    +
    +public static final String CPE_URL
    +
    +
    The properties key for the URL to the CPE. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +CPE_META_URL

    +
    +public static final String CPE_META_URL
    +
    +
    The properties key for the URL to the CPE. +

    +

    +
    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
    +
    +
    + +

    +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
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html new file mode 100644 index 000000000..5936a8001 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/Settings.html @@ -0,0 +1,557 @@ + + + + + + + +Settings (dependency-check-core 1.0.1 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 FilegetFile(String key) + +
    +          Returns a value from the properties file as a File object.
    +static FilegetFile(String key, + String defaultValue) + +
    +          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 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 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(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,
    +                           String defaultValue)
    +
    +
    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
    defaultValue - the default value for the requested property +
    Returns:
    the property from the properties file as a File object
    +
    +
    +
    + +

    +getFile

    +
    +public static File getFile(String key)
    +                    throws IOException
    +
    +
    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 also replace 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 +
    Throws: +
    IOException - thrown if the file path to the JAR cannot be found
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

    +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
    +
    +
    +
    + +

    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html new file mode 100644 index 000000000..842a4748f --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/UrlStringUtils.html @@ -0,0 +1,281 @@ + + + + + + + +UrlStringUtils (dependency-check-core 1.0.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Checksum.html new file mode 100644 index 000000000..e180fe830 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersion.html new file mode 100644 index 000000000..8a7191b81 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DependencyVersionUtil.html new file mode 100644 index 000000000..033bc2fdf --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html new file mode 100644 index 000000000..2c35169f3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/DownloadFailedException.html @@ -0,0 +1,266 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.DownloadFailedException (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.DownloadFailedException

    +
    + + + + + + + + + + + + + +
    +Packages that use DownloadFailedException
    org.owasp.dependencycheck.data.nvdcve.xml + + 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.nvdcve.xml
    +  +

    + + + + + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that throw DownloadFailedException
    +protected  Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.retrieveCurrentTimestampsFromWeb() + +
    +          Retrieves the timestamps from the NVD CVE meta data file.
    + Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.updateNeeded() + +
    +          Determines if the index needs to be updated.
    +  +

    + + + + + +
    +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 voidDownloader.fetchFile(URL url, + File outputPath, + boolean unzip) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static voidDownloader.fetchFile(URL url, + String outputPath) + +
    +          Retrieves a file from a given URL and saves it to the outputPath.
    +static voidDownloader.fetchFile(URL url, + String outputPath, + boolean unzip) + +
    +          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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Downloader.html new file mode 100644 index 000000000..c7520cc48 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/FileUtils.html new file mode 100644 index 000000000..a9f356808 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Filter.html new file mode 100644 index 000000000..e69cf719d --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html new file mode 100644 index 000000000..2259703ea --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/InvalidSettingException.html @@ -0,0 +1,235 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.utils.InvalidSettingException (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.utils.InvalidSettingException

    +
    + + + + + + + + + + + + + +
    +Packages that use InvalidSettingException
    org.owasp.dependencycheck.data.nvdcve.xml + + 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 InvalidSettingException in org.owasp.dependencycheck.data.nvdcve.xml
    +  +

    + + + + + + + + + +
    Methods in org.owasp.dependencycheck.data.nvdcve.xml that throw InvalidSettingException
    +protected  Map<String,DatabaseUpdater.NvdCveUrl>DatabaseUpdater.retrieveCurrentTimestampsFromWeb() + +
    +          Retrieves the timestamps from the NVD CVE meta data file.
    +  +

    + + + + + +
    +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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/NonClosingStream.html new file mode 100644 index 000000000..32557b980 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.KEYS.html new file mode 100644 index 000000000..b6422080e --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/Settings.html new file mode 100644 index 000000000..47099e246 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/class-use/UrlStringUtils.html new file mode 100644 index 000000000..abba9f526 --- /dev/null +++ b/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.1 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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..9a9370ffe --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,64 @@ + + + + + + + +org.owasp.dependencycheck.utils (dependency-check-core 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.utils + + + + +
    +Classes  + +
    +Checksum +
    +DependencyVersion +
    +DependencyVersionUtil +
    +Downloader +
    +FileUtils +
    +Filter +
    +NonClosingStream +
    +Settings +
    +Settings.KEYS +
    +UrlStringUtils
    + + + + + + +
    +Exceptions  + +
    +DownloadFailedException +
    +InvalidSettingException
    + + + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..3ea911ba3 --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,241 @@ + + + + + + + +org.owasp.dependencycheck.utils (dependency-check-core 1.0.1 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> 
    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.
    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/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html new file mode 100644 index 000000000..1102414eb --- /dev/null +++ b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-tree.html @@ -0,0 +1,167 @@ + + + + + + + +org.owasp.dependencycheck.utils Class Hierarchy (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

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

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html b/dependency-check-core/apidocs/org/owasp/dependencycheck/utils/package-use.html new file mode 100644 index 000000000..991d0466d --- /dev/null +++ b/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.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.utils

    +
    + + + + + + + + + + + + + + + + + +
    +Packages that use org.owasp.dependencycheck.utils
    org.owasp.dependencycheck.data.nvdcve.xml + + 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.nvdcve.xml
    DownloadFailedException + +
    +          An exception used when a download fails.
    InvalidSettingException + +
    +          An exception used when an error occurs reading a setting.
    +  +

    + + + + + + + + +
    +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.
    InvalidSettingException + +
    +          An exception used when an error occurs reading a setting.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/overview-frame.html b/dependency-check-core/apidocs/overview-frame.html new file mode 100644 index 000000000..22cec39c9 --- /dev/null +++ b/dependency-check-core/apidocs/overview-frame.html @@ -0,0 +1,67 @@ + + + + + + + +Overview List (dependency-check-core 1.0.1 API) + + + + + + + + + + + + + + + +
    +
    + + + + + +
    All Classes +

    + +Packages +
    +org.owasp.dependencycheck +
    +org.owasp.dependencycheck.analyzer +
    +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.nvdcve.xml +
    +org.owasp.dependencycheck.dependency +
    +org.owasp.dependencycheck.jaxb.pom +
    +org.owasp.dependencycheck.jaxb.pom.generated +
    +org.owasp.dependencycheck.reporting +
    +org.owasp.dependencycheck.utils +
    +

    + +

    +  + + diff --git a/dependency-check-core/apidocs/overview-summary.html b/dependency-check-core/apidocs/overview-summary.html new file mode 100644 index 000000000..17614606e --- /dev/null +++ b/dependency-check-core/apidocs/overview-summary.html @@ -0,0 +1,265 @@ + + + + + + + +Overview (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +


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

    +dependency-check-core 1.0.1 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.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.nvdcve.xml + + 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.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/dependency-check-core/apidocs/overview-tree.html b/dependency-check-core/apidocs/overview-tree.html new file mode 100644 index 000000000..6f1832f25 --- /dev/null +++ b/dependency-check-core/apidocs/overview-tree.html @@ -0,0 +1,235 @@ + + + + + + + +Class Hierarchy (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

    +
    +
    +
    Package Hierarchies:
    org.owasp.dependencycheck, org.owasp.dependencycheck.analyzer, 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.nvdcve.xml, org.owasp.dependencycheck.dependency, org.owasp.dependencycheck.jaxb.pom, org.owasp.dependencycheck.jaxb.pom.generated, org.owasp.dependencycheck.reporting, org.owasp.dependencycheck.utils
    +
    +

    +Class Hierarchy +

    + +

    +Interface Hierarchy +

    + +

    +Enum Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2012-2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-core/apidocs/package-list b/dependency-check-core/apidocs/package-list new file mode 100644 index 000000000..48e37dfbc --- /dev/null +++ b/dependency-check-core/apidocs/package-list @@ -0,0 +1,13 @@ +org.owasp.dependencycheck +org.owasp.dependencycheck.analyzer +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.nvdcve.xml +org.owasp.dependencycheck.dependency +org.owasp.dependencycheck.jaxb.pom +org.owasp.dependencycheck.jaxb.pom.generated +org.owasp.dependencycheck.reporting +org.owasp.dependencycheck.utils diff --git a/dependency-check-core/apidocs/resources/inherit.gif b/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/dependency-check-core/apidocs/serialized-form.html b/dependency-check-core/apidocs/serialized-form.html new file mode 100644 index 000000000..d79ded861 --- /dev/null +++ b/dependency-check-core/apidocs/serialized-form.html @@ -0,0 +1,647 @@ + + + + + + + +Serialized Form (dependency-check-core 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Serialized Form

    +
    +
    + + + + + +
    +Package org.owasp.dependencycheck.analyzer
    + +

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

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.data
    + +

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

    +

    +
    +
    +
    + + + + + +
    +Package org.owasp.dependencycheck.data.nvdcve
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.nvdcve.DatabaseException extends Exception implements Serializable
    + +

    +serialVersionUID: 1L + +

    +


    + + + + + +
    +Package org.owasp.dependencycheck.data.nvdcve.xml
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.data.nvdcve.xml.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.utils
    + +

    + + + + + +
    +Class org.owasp.dependencycheck.utils.DownloadFailedException 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/dependency-check-core/apidocs/stylesheet.css b/dependency-check-core/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/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/dependency-check-core/checkstyle.html b/dependency-check-core/checkstyle.html new file mode 100644 index 000000000..395e35e47 --- /dev/null +++ b/dependency-check-core/checkstyle.html @@ -0,0 +1,295 @@ + + + + + + + + + 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
    151002
    + +
    +

    Details

    +
    +

    org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java

    + + + + + + + + +
    ViolationMessageLine
    ErrorsMust have at least one statement.156
    +
    +

    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/dependency-check-core/checkstyle.rss b/dependency-check-core/checkstyle.rss new file mode 100644 index 000000000..30fa82187 --- /dev/null +++ b/dependency-check-core/checkstyle.rss @@ -0,0 +1,2151 @@ + + + + + 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: 151, + Errors: 2, + Warnings: 0, + Infos: 0 + + https://github.com/jeremylong/DependencyCheck.git/dependency-check-core/checkstyle.html + +

    Click here for the full Checkstyle report.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FilesIWE
    + dependency-check-maven/target/classes/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/package-info.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/generated-classes/cobertura/mojo.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/HintAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/JarAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Plugin.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/target/generated-classes/cobertura/cobertura.properties + + 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/BuildBase.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.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 +
    + dependency-check-ant/target/generated-classes/cobertura/task.properties + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
    + dependency-check-core/src/test/resources/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Settings.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/maven-plugin-help.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/CachedWebDataSource.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/target/classes/task.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/EvidenceCollection.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Model.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Parent.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/generated-classes/cobertura/log.properties + + 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/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 +
    + 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 +
    + dependency-check-ant/target/generated-classes/cobertura/taskdefs.properties + + 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/reporting/package-info.java + + 0 + + 0 + + 0 +
    + dependency-check-core/target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/DependencySimilarity.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/Analyzer.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/target/maven-archiver/pom.properties + + 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 +
    + dependency-check-cli/target/maven-archiver/pom.properties + + 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/utils/UrlStringUtils.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/dependency/Identifier.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java + + 0 + + 0 + + 1 +
    + dependency-check-core/src/main/resources/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/DatabaseException.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/target/classes/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.java + + 0 + + 0 + + 0 +
    + dependency-check-cli/target/generated-classes/cobertura/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Reporting.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/Checksum.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 +
    + dependency-check-ant/target/classes/taskdefs.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Scm.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.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/data/cpe/CPEAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/FileNameAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/utils/InvalidSettingException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.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/data/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.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 +
    + dependency-check-ant/src/main/resources/taskdefs.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/package-info.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/Engine.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
    + dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/xml/package-info.java + + 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/nvdcve/xml/InvalidDataException.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/UpdateService.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/AbstractIndex.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/jaxb/pom/generated/ReportPlugin.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/IndexEntry.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/Index.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/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 +
    + dependency-check-cli/target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/Organization.java + + 0 + + 0 + + 0 +
    + dependency-check-ant/target/generated-classes/cobertura/log.properties + + 0 + + 0 + + 0 +
    + dependency-check-core/target/generated-classes/cobertura/dependencycheck.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/cpe/package-info.java + + 0 + + 0 + + 0 +
    + dependency-check-cli/target/classes/log.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.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 +
    + dependency-check-maven/src/main/resources/mojo.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.java + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.java + + 0 + + 0 + + 0 +
    + dependency-check-maven/target/classes/mojo.properties + + 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/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 +
    + dependency-check-maven/src/main/resources/log.properties + + 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/jaxb/pom/generated/Activation.java + + 0 + + 0 + + 0 +
    + +
    +
    +
    +
    + diff --git a/dependency-check-core/cobertura/css/help.css b/dependency-check-core/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/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/dependency-check-core/cobertura/css/main.css b/dependency-check-core/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/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/dependency-check-core/cobertura/css/sortabletable.css b/dependency-check-core/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/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/dependency-check-core/cobertura/css/source-viewer.css b/dependency-check-core/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/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/dependency-check-core/cobertura/css/tooltip.css b/dependency-check-core/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/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/dependency-check-core/cobertura/frame-packages.html b/dependency-check-core/cobertura/frame-packages.html new file mode 100644 index 000000000..571cdfad8 --- /dev/null +++ b/dependency-check-core/cobertura/frame-packages.html @@ -0,0 +1,56 @@ + + + + +Coverage Report + + + +
    Packages
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    All
    org.owasp.dependencycheck
    org.owasp.dependencycheck.analyzer
    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.nvdcve.xml
    org.owasp.dependencycheck.dependency
    org.owasp.dependencycheck.jaxb.pom
    org.owasp.dependencycheck.jaxb.pom.generated
    org.owasp.dependencycheck.reporting
    org.owasp.dependencycheck.utils
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html new file mode 100644 index 000000000..4790127d2 --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.analyzer.html @@ -0,0 +1,56 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.analyzer +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractAnalyzer (100%)
    AnalysisException (0%)
    AnalysisPhase (100%)
    Analyzer (N/A)
    AnalyzerService (100%)
    ArchiveAnalyzer (72%)
    DependencyBundlingAnalyzer (6%)
    FalsePositiveAnalyzer (56%)
    FileNameAnalyzer (100%)
    HintAnalyzer (87%)
    JarAnalyzer (80%)
    JavaScriptAnalyzer (0%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cpe.html new file mode 100644 index 000000000..75e174092 --- /dev/null +++ b/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
    + + + + + + + + + + + + + + + +
    CPEAnalyzer (78%)
    Fields (0%)
    Index (64%)
    IndexEntry (66%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.cwe.html new file mode 100644 index 000000000..fe192fe7b --- /dev/null +++ b/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/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html new file mode 100644 index 000000000..9e8128b4b --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.html @@ -0,0 +1,29 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data +
    +
     
    +
    Classes
    + + + + + + + + + + + + +
    CachedWebDataSource (N/A)
    UpdateException (0%)
    UpdateService (0%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html new file mode 100644 index 000000000..d4711c6b3 --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.lucene.html @@ -0,0 +1,56 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.lucene +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractIndex (54%)
    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/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html new file mode 100644 index 000000000..6d7a8f500 --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.html @@ -0,0 +1,32 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.nvdcve +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + +
    CorruptDatabaseException (0%)
    CveDB (46%)
    DatabaseException (0%)
    NvdCveAnalyzer (11%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.xml.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.xml.html new file mode 100644 index 000000000..6496513f5 --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.data.nvdcve.xml.html @@ -0,0 +1,32 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.data.nvdcve.xml +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + +
    DatabaseUpdater (0%)
    InvalidDataException (0%)
    NvdCve12Handler (93%)
    NvdCve20Handler (79%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html new file mode 100644 index 000000000..200a75436 --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.dependency.html @@ -0,0 +1,44 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.dependency +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Dependency (57%)
    Evidence (51%)
    EvidenceCollection (73%)
    Identifier (25%)
    Reference (32%)
    Vulnerability (57%)
    VulnerabilityComparator (50%)
    VulnerableSoftware (74%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html new file mode 100644 index 000000000..7ba3f654d --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.html @@ -0,0 +1,23 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck +
    +
     
    +
    Classes
    + + + + + + +
    Engine (38%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.generated.html new file mode 100644 index 000000000..5a0facaef --- /dev/null +++ b/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 (12%)
    Scm (7%)
    Site (10%)
    package-info (N/A)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.jaxb.pom.html new file mode 100644 index 000000000..d02f1047e --- /dev/null +++ b/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/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html new file mode 100644 index 000000000..142dc00ac --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.reporting.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.reporting +
    +
     
    +
    Classes
    + + + + + + + + + +
    ReportGenerator (0%)
    VelocityLoggerRedirect (0%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html new file mode 100644 index 000000000..5365d82ce --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles-org.owasp.dependencycheck.utils.html @@ -0,0 +1,53 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.utils +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Checksum (84%)
    DependencyVersion (92%)
    DependencyVersionUtil (92%)
    DownloadFailedException (0%)
    Downloader (0%)
    FileUtils (36%)
    Filter (92%)
    InvalidSettingException (0%)
    NonClosingStream (100%)
    Settings (61%)
    UrlStringUtils (81%)
    + + diff --git a/dependency-check-core/cobertura/frame-sourcefiles.html b/dependency-check-core/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..d1ab5a2fe --- /dev/null +++ b/dependency-check-core/cobertura/frame-sourcefiles.html @@ -0,0 +1,326 @@ + + + + +Coverage Report Classes + + + +
    +All Packages +
    +
     
    +
    Classes
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    AbstractAnalyzer (100%)
    AbstractIndex (54%)
    AbstractTokenizingFilter (100%)
    Activation (6%)
    ActivationFile (0%)
    ActivationOS (0%)
    ActivationProperty (14%)
    AlphaNumericTokenizer (60%)
    AnalysisException (0%)
    AnalysisPhase (100%)
    Analyzer (N/A)
    AnalyzerService (100%)
    ArchiveAnalyzer (72%)
    Build (9%)
    BuildBase (7%)
    CPEAnalyzer (78%)
    CachedWebDataSource (N/A)
    Checksum (84%)
    CiManagement (0%)
    Contributor (5%)
    CorruptDatabaseException (0%)
    CveDB (46%)
    CweDB (47%)
    CweHandler (0%)
    DatabaseException (0%)
    DatabaseUpdater (0%)
    Dependency (57%)
    Dependency (9%)
    DependencyBundlingAnalyzer (6%)
    DependencyManagement (0%)
    DependencySimilarity (0%)
    DependencyVersion (92%)
    DependencyVersionUtil (92%)
    DeploymentRepository (6%)
    Developer (5%)
    DistributionManagement (5%)
    DownloadFailedException (0%)
    Downloader (0%)
    Engine (38%)
    Evidence (51%)
    EvidenceCollection (73%)
    Exclusion (14%)
    Extension (0%)
    FalsePositiveAnalyzer (56%)
    FieldAnalyzer (100%)
    Fields (0%)
    FileNameAnalyzer (100%)
    FileUtils (36%)
    Filter (92%)
    HintAnalyzer (87%)
    Identifier (25%)
    Index (64%)
    IndexEntry (66%)
    InvalidDataException (0%)
    InvalidSettingException (0%)
    IssueManagement (14%)
    JarAnalyzer (80%)
    JavaScriptAnalyzer (0%)
    License (23%)
    LuceneUtils (88%)
    MailingList (0%)
    MavenNamespaceFilter (100%)
    Model (13%)
    NonClosingStream (100%)
    Notifier (0%)
    NvdCve12Handler (93%)
    NvdCve20Handler (79%)
    NvdCveAnalyzer (11%)
    ObjectFactory (0%)
    Organization (0%)
    Parent (7%)
    Plugin (8%)
    PluginExecution (16%)
    PluginManagement (0%)
    Prerequisites (0%)
    Profile (4%)
    Reference (32%)
    Relocation (0%)
    ReportGenerator (0%)
    ReportPlugin (14%)
    ReportSet (13%)
    Reporting (20%)
    Repository (5%)
    RepositoryPolicy (10%)
    Resource (12%)
    Scm (7%)
    SearchFieldAnalyzer (100%)
    SearchVersionAnalyzer (0%)
    Settings (61%)
    Site (10%)
    TokenPairConcatenatingFilter (100%)
    UpdateException (0%)
    UpdateService (0%)
    UrlStringUtils (81%)
    UrlTokenizingFilter (80%)
    VelocityLoggerRedirect (0%)
    VersionAnalyzer (0%)
    VersionTokenizingFilter (0%)
    Vulnerability (57%)
    VulnerabilityComparator (50%)
    VulnerableSoftware (74%)
    package-info (N/A)
    + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html new file mode 100644 index 000000000..a6484b7b6 --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.analyzer.html @@ -0,0 +1,65 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.analyzer13
    66%
    542/813
    49%
    239/484
    4.196
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    AbstractAnalyzer
    100%
    6/6
    N/A
    1
    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
    72%
    71/98
    61%
    21/34
    4.556
    DependencyBundlingAnalyzer
    6%
    7/105
    0%
    0/94
    7.1
    FalsePositiveAnalyzer
    56%
    53/93
    34%
    26/76
    5.2
    FileNameAnalyzer
    100%
    22/22
    83%
    5/6
    1.6
    HintAnalyzer
    87%
    29/33
    92%
    13/14
    2.4
    JarAnalyzer
    80%
    320/399
    65%
    163/248
    6.103
    JarAnalyzer$ClassNameInformation
    80%
    17/21
    90%
    9/10
    6.103
    JavaScriptAnalyzer
    0%
    0/11
    N/A
    1
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html new file mode 100644 index 000000000..c0c09e11a --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cpe.html @@ -0,0 +1,50 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.cpe6
    75%
    227/301
    64%
    116/180
    3.192
    + +
     
    + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CPEAnalyzer
    86%
    163/188
    83%
    97/116
    3.844
    CPEAnalyzer$IdentifierConfidence
    100%
    3/3
    N/A
    3.844
    CPEAnalyzer$IdentifierMatch
    38%
    15/39
    16%
    4/24
    3.844
    Fields
    0%
    0/1
    N/A
    0
    Index
    64%
    22/34
    37%
    3/8
    1.625
    IndexEntry
    66%
    24/36
    37%
    12/32
    2.5
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.cwe.html new file mode 100644 index 000000000..76b795646 --- /dev/null +++ b/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/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html new file mode 100644 index 000000000..d8b1c128a --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.html @@ -0,0 +1,51 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data
    +
     
    + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data3
    0%
    0/15
    0%
    0/2
    1.125
    org.owasp.dependencycheck.data.cpe6
    75%
    227/301
    64%
    116/180
    3.192
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene12
    61%
    140/226
    53%
    50/93
    2.34
    org.owasp.dependencycheck.data.nvdcve4
    42%
    150/354
    47%
    48/102
    3.355
    org.owasp.dependencycheck.data.nvdcve.xml7
    34%
    169/486
    51%
    99/192
    3.789
    + +
     
    + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CachedWebDataSource
    N/A
    N/A
    1
    UpdateException
    0%
    0/8
    N/A
    1
    UpdateService
    0%
    0/7
    0%
    0/2
    1.333
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html new file mode 100644 index 000000000..4c852b5cf --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.lucene.html @@ -0,0 +1,64 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.lucene12
    61%
    140/226
    53%
    50/93
    2.34
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    AbstractIndex
    54%
    46/85
    57%
    15/26
    1.947
    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%
    15/17
    33%
    9/27
    9
    SearchFieldAnalyzer
    100%
    15/15
    50%
    1/2
    1.333
    SearchVersionAnalyzer
    0%
    0/8
    N/A
    1
    TokenPairConcatenatingFilter
    100%
    24/24
    100%
    8/8
    3
    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/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html new file mode 100644 index 000000000..3260ccf6e --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.html @@ -0,0 +1,49 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve
    +
     
    + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.nvdcve4
    42%
    150/354
    47%
    48/102
    3.355
    org.owasp.dependencycheck.data.nvdcve.xml7
    34%
    169/486
    51%
    99/192
    3.789
    + +
     
    + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    CorruptDatabaseException
    0%
    0/4
    N/A
    1
    CveDB
    46%
    147/319
    51%
    48/94
    5
    DatabaseException
    0%
    0/4
    N/A
    1
    NvdCveAnalyzer
    11%
    3/27
    0%
    0/8
    1.5
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.xml.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.xml.html new file mode 100644 index 000000000..303810d2d --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.data.nvdcve.xml.html @@ -0,0 +1,51 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.xml
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.data.nvdcve.xml7
    34%
    169/486
    51%
    99/192
    3.789
    + +
     
    + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    DatabaseUpdater
    0%
    0/262
    0%
    0/76
    5.789
    DatabaseUpdater$NvdCveUrl
    0%
    0/17
    N/A
    5.789
    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
    76%
    97/126
    84%
    73/86
    3
    NvdCve20Handler$Element
    94%
    18/19
    N/A
    3
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.dependency.html new file mode 100644 index 000000000..38ce77018 --- /dev/null +++ b/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
    58%
    311/529
    33%
    127/376
    2.439
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Dependency
    57%
    80/140
    12%
    15/124
    2.78
    Evidence
    46%
    23/49
    22%
    9/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
    25%
    10/39
    4%
    1/22
    2
    Reference
    32%
    11/34
    8%
    3/34
    3.444
    Vulnerability
    57%
    39/68
    18%
    3/16
    1.312
    VulnerabilityComparator
    50%
    1/2
    N/A
    1
    VulnerableSoftware
    74%
    68/91
    77%
    57/74
    3.278
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html new file mode 100644 index 000000000..72ff7c471 --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.html @@ -0,0 +1,54 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck
    +
     
    + + + + + + + + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck1
    38%
    50/130
    42%
    27/64
    3.412
    org.owasp.dependencycheck.analyzer13
    66%
    542/813
    49%
    239/484
    4.196
    org.owasp.dependencycheck.data3
    0%
    0/15
    0%
    0/2
    1.125
    org.owasp.dependencycheck.data.cpe6
    75%
    227/301
    64%
    116/180
    3.192
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene12
    61%
    140/226
    53%
    50/93
    2.34
    org.owasp.dependencycheck.data.nvdcve4
    42%
    150/354
    47%
    48/102
    3.355
    org.owasp.dependencycheck.data.nvdcve.xml7
    34%
    169/486
    51%
    99/192
    3.789
    org.owasp.dependencycheck.dependency14
    58%
    311/529
    33%
    127/376
    2.439
    org.owasp.dependencycheck.jaxb.pom1
    100%
    13/13
    50%
    1/2
    1.25
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    73/945
    1%
    1/98
    1.091
    org.owasp.dependencycheck.reporting3
    0%
    0/101
    0%
    0/44
    4.273
    org.owasp.dependencycheck.utils14
    57%
    222/384
    61%
    96/156
    2.881
    + +
     
    + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Engine
    38%
    50/130
    42%
    27/64
    3.412
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.generated.html new file mode 100644 index 000000000..bcfbd70d2 --- /dev/null +++ b/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%
    73/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
    0%
    0/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/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.jaxb.pom.html new file mode 100644 index 000000000..aa09686a4 --- /dev/null +++ b/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%
    73/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/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.reporting.html new file mode 100644 index 000000000..874b3fa81 --- /dev/null +++ b/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
    0%
    0/101
    0%
    0/44
    4.273
    + +
     
    + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    ReportGenerator
    0%
    0/82
    0%
    0/38
    5.333
    ReportGenerator$Format
    0%
    0/5
    N/A
    5.333
    VelocityLoggerRedirect
    0%
    0/14
    0%
    0/6
    3
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html new file mode 100644 index 000000000..50770297a --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary-org.owasp.dependencycheck.utils.html @@ -0,0 +1,65 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.utils
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.utils14
    57%
    222/384
    61%
    96/156
    2.881
    + +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    Checksum
    84%
    21/25
    90%
    9/10
    2.75
    DependencyVersion
    92%
    76/82
    77%
    48/62
    5.091
    DependencyVersionUtil
    92%
    24/26
    100%
    14/14
    7
    DownloadFailedException
    0%
    0/8
    N/A
    1
    Downloader
    0%
    0/84
    0%
    0/24
    4.143
    FileUtils
    36%
    8/22
    33%
    4/12
    2.6
    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
    NonClosingStream
    100%
    3/3
    N/A
    1
    Settings
    63%
    48/76
    41%
    5/12
    2.333
    Settings$KEYS
    0%
    0/2
    N/A
    2.333
    UrlStringUtils
    81%
    18/22
    66%
    8/12
    2.5
    + + + + diff --git a/dependency-check-core/cobertura/frame-summary.html b/dependency-check-core/cobertura/frame-summary.html new file mode 100644 index 000000000..5bb4450d0 --- /dev/null +++ b/dependency-check-core/cobertura/frame-summary.html @@ -0,0 +1,42 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - All Packages
    +
     
    + + + + + + + + + + + + + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages167
    44%
    1908/4328
    44%
    806/1801
    2.095
    org.owasp.dependencycheck1
    38%
    50/130
    42%
    27/64
    3.412
    org.owasp.dependencycheck.analyzer13
    66%
    542/813
    49%
    239/484
    4.196
    org.owasp.dependencycheck.data3
    0%
    0/15
    0%
    0/2
    1.125
    org.owasp.dependencycheck.data.cpe6
    75%
    227/301
    64%
    116/180
    3.192
    org.owasp.dependencycheck.data.cwe2
    35%
    11/31
    25%
    2/8
    2.8
    org.owasp.dependencycheck.data.lucene12
    61%
    140/226
    53%
    50/93
    2.34
    org.owasp.dependencycheck.data.nvdcve4
    42%
    150/354
    47%
    48/102
    3.355
    org.owasp.dependencycheck.data.nvdcve.xml7
    34%
    169/486
    51%
    99/192
    3.789
    org.owasp.dependencycheck.dependency14
    58%
    311/529
    33%
    127/376
    2.439
    org.owasp.dependencycheck.jaxb.pom1
    100%
    13/13
    50%
    1/2
    1.25
    org.owasp.dependencycheck.jaxb.pom.generated87
    7%
    73/945
    1%
    1/98
    1.091
    org.owasp.dependencycheck.reporting3
    0%
    0/101
    0%
    0/44
    4.273
    org.owasp.dependencycheck.utils14
    57%
    222/384
    61%
    96/156
    2.881
    + + + + diff --git a/dependency-check-core/cobertura/help.html b/dependency-check-core/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/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/dependency-check-core/cobertura/images/blank.png b/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/dependency-check-core/cobertura/images/downsimple.png b/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/dependency-check-core/cobertura/images/upsimple.png b/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/dependency-check-core/cobertura/index.html b/dependency-check-core/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/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/dependency-check-core/cobertura/js/customsorttypes.js b/dependency-check-core/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/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/dependency-check-core/cobertura/js/popup.js b/dependency-check-core/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/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/dependency-check-core/cobertura/js/sortabletable.js b/dependency-check-core/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/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/dependency-check-core/cobertura/js/stringbuilder.js b/dependency-check-core/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html new file mode 100644 index 000000000..fc681f4b1 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.Engine.html @@ -0,0 +1,676 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.Engine
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Engine
    38%
    50/130
    42%
    27/64
    3.412
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.util.ArrayList;
     24  
     import java.util.HashSet;
     25  
     import java.util.Iterator;
     26  
     import java.util.List;
     27  
     import java.util.Set;
     28  
     import java.util.logging.Level;
     29  
     import java.util.logging.Logger;
     30  
     import org.owasp.dependencycheck.analyzer.AnalysisException;
     31  
     import org.owasp.dependencycheck.analyzer.AnalysisPhase;
     32  
     import org.owasp.dependencycheck.analyzer.Analyzer;
     33  
     import org.owasp.dependencycheck.analyzer.AnalyzerService;
     34  
     import org.owasp.dependencycheck.data.CachedWebDataSource;
     35  
     import org.owasp.dependencycheck.data.UpdateException;
     36  
     import org.owasp.dependencycheck.data.UpdateService;
     37  
     import org.owasp.dependencycheck.dependency.Dependency;
     38  
     import org.owasp.dependencycheck.utils.FileUtils;
     39  
     import org.owasp.dependencycheck.utils.InvalidSettingException;
     40  
     import org.owasp.dependencycheck.utils.Settings;
     41  
     
     42  
     /**
     43  
      * Scans files, directories, etc. for Dependencies. Analyzers are loaded and
     44  
      * used to process the files found by the scan, if a file is encountered and an
     45  
      * Analyzer is associated with the file type then the file is turned into a
     46  
      * dependency.
     47  
      *
     48  
      * @author Jeremy Long (jeremy.long@owasp.org)
     49  
      */
     50  
     public class Engine {
     51  
     
     52  
         /**
     53  
          * The list of dependencies.
     54  
          */
     55  3
         private final List<Dependency> dependencies = new ArrayList<Dependency>();
     56  
         /**
     57  
          * A Map of analyzers grouped by Analysis phase.
     58  
          */
     59  3
         private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers =
     60  
                 new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class);
     61  
         /**
     62  
          * A set of extensions supported by the analyzers.
     63  
          */
     64  3
         private final Set<String> extensions = new HashSet<String>();
     65  
     
     66  
         /**
     67  
          * Creates a new Engine.
     68  
          */
     69  3
         public Engine() {
     70  3
             boolean autoUpdate = true;
     71  
             try {
     72  3
                 autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);
     73  0
             } catch (InvalidSettingException ex) {
     74  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true.");
     75  3
             }
     76  3
             if (autoUpdate) {
     77  0
                 doUpdates();
     78  
             }
     79  3
             loadAnalyzers();
     80  3
         }
     81  
     
     82  
         /**
     83  
          * Creates a new Engine.
     84  
          *
     85  
          * @param autoUpdate indicates whether or not data should be updated from
     86  
          * the Internet
     87  
          * @deprecated This function should no longer be used; the autoupdate flag
     88  
          * should be set using:
     89  
          * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code>
     90  
          */
     91  
         @Deprecated
     92  0
         public Engine(boolean autoUpdate) {
     93  0
             if (autoUpdate) {
     94  0
                 doUpdates();
     95  
             }
     96  0
             loadAnalyzers();
     97  0
         }
     98  
     
     99  
         /**
     100  
          * Loads the analyzers specified in the configuration file (or system
     101  
          * properties).
     102  
          */
     103  
         private void loadAnalyzers() {
     104  
     
     105  30
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     106  27
                 analyzers.put(phase, new ArrayList<Analyzer>());
     107  
             }
     108  
     
     109  3
             final AnalyzerService service = AnalyzerService.getInstance();
     110  3
             final Iterator<Analyzer> iterator = service.getAnalyzers();
     111  27
             while (iterator.hasNext()) {
     112  24
                 final Analyzer a = iterator.next();
     113  24
                 analyzers.get(a.getAnalysisPhase()).add(a);
     114  24
                 if (a.getSupportedExtensions() != null) {
     115  6
                     extensions.addAll(a.getSupportedExtensions());
     116  
                 }
     117  24
             }
     118  3
         }
     119  
     
     120  
         /**
     121  
          * Get the List of the analyzers for a specific phase of analysis.
     122  
          *
     123  
          * @param phase the phase to get the configured analyzers.
     124  
          * @return the analyzers loaded
     125  
          */
     126  
         public List<Analyzer> getAnalyzers(AnalysisPhase phase) {
     127  0
             return analyzers.get(phase);
     128  
         }
     129  
     
     130  
         /**
     131  
          * Get the dependencies identified.
     132  
          *
     133  
          * @return the dependencies identified
     134  
          */
     135  
         public List<Dependency> getDependencies() {
     136  15
             return dependencies;
     137  
         }
     138  
     
     139  
         /**
     140  
          * Scans an array of files or directories. If a directory is specified, it
     141  
          * will be scanned recursively. Any dependencies identified are added to the
     142  
          * dependency collection.
     143  
          *
     144  
          * @since v0.3.2.5
     145  
          *
     146  
          * @param paths an array of paths to files or directories to be analyzed.
     147  
          */
     148  
         public void scan(String[] paths) {
     149  0
             for (String path : paths) {
     150  0
                 final File file = new File(path);
     151  0
                 scan(file);
     152  
             }
     153  0
         }
     154  
     
     155  
         /**
     156  
          * Scans a given file or directory. If a directory is specified, it will be
     157  
          * scanned recursively. Any dependencies identified are added to the
     158  
          * dependency collection.
     159  
          *
     160  
          * @param path the path to a file or directory to be analyzed.
     161  
          */
     162  
         public void scan(String path) {
     163  0
             final File file = new File(path);
     164  0
             scan(file);
     165  0
         }
     166  
     
     167  
         /**
     168  
          * Scans an array of files or directories. If a directory is specified, it
     169  
          * will be scanned recursively. Any dependencies identified are added to the
     170  
          * dependency collection.
     171  
          *
     172  
          * @since v0.3.2.5
     173  
          *
     174  
          * @param files an array of paths to files or directories to be analyzed.
     175  
          */
     176  
         public void scan(File[] files) {
     177  0
             for (File file : files) {
     178  0
                 scan(file);
     179  
             }
     180  0
         }
     181  
     
     182  
         /**
     183  
          * Scans a list of files or directories. If a directory is specified, it
     184  
          * will be scanned recursively. Any dependencies identified are added to the
     185  
          * dependency collection.
     186  
          *
     187  
          * @since v0.3.2.5
     188  
          *
     189  
          * @param files a set of paths to files or directories to be analyzed.
     190  
          */
     191  
         public void scan(Set<File> files) {
     192  0
             for (File file : files) {
     193  0
                 scan(file);
     194  
             }
     195  0
         }
     196  
     
     197  
         /**
     198  
          * Scans a list of files or directories. If a directory is specified, it
     199  
          * will be scanned recursively. Any dependencies identified are added to the
     200  
          * dependency collection.
     201  
          *
     202  
          * @since v0.3.2.5
     203  
          *
     204  
          * @param files a set of paths to files or directories to be analyzed.
     205  
          */
     206  
         public void scan(List<File> files) {
     207  0
             for (File file : files) {
     208  0
                 scan(file);
     209  
             }
     210  0
         }
     211  
     
     212  
         /**
     213  
          * Scans a given file or directory. If a directory is specified, it will be
     214  
          * scanned recursively. Any dependencies identified are added to the
     215  
          * dependency collection.
     216  
          *
     217  
          * @since v0.3.2.4
     218  
          *
     219  
          * @param file the path to a file or directory to be analyzed.
     220  
          */
     221  
         public void scan(File file) {
     222  3
             if (file.exists()) {
     223  3
                 if (file.isDirectory()) {
     224  3
                     scanDirectory(file);
     225  
                 } else {
     226  0
                     scanFile(file);
     227  
                 }
     228  
             }
     229  3
         }
     230  
     
     231  
         /**
     232  
          * Recursively scans files and directories. Any dependencies identified are
     233  
          * added to the dependency collection.
     234  
          *
     235  
          * @param dir the directory to scan.
     236  
          */
     237  
         protected void scanDirectory(File dir) {
     238  876
             final File[] files = dir.listFiles();
     239  876
             if (files != null) {
     240  1926
                 for (File f : files) {
     241  1050
                     if (f.isDirectory()) {
     242  873
                         scanDirectory(f);
     243  
                     } else {
     244  177
                         scanFile(f);
     245  
                     }
     246  
                 }
     247  
             }
     248  876
         }
     249  
     
     250  
         /**
     251  
          * Scans a specified file. If a dependency is identified it is added to the
     252  
          * dependency collection.
     253  
          *
     254  
          * @param file The file to scan.
     255  
          */
     256  
         protected void scanFile(File file) {
     257  177
             if (!file.isFile()) {
     258  0
                 final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString());
     259  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
     260  0
                 return;
     261  
             }
     262  177
             final String fileName = file.getName();
     263  177
             final String extension = FileUtils.getFileExtension(fileName);
     264  177
             if (extension != null) {
     265  177
                 if (extensions.contains(extension)) {
     266  177
                     final Dependency dependency = new Dependency(file);
     267  177
                     dependencies.add(dependency);
     268  177
                 }
     269  
             } else {
     270  0
                 final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.",
     271  
                         file.toString());
     272  0
                 Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg);
     273  
             }
     274  177
         }
     275  
     
     276  
         /**
     277  
          * Runs the analyzers against all of the dependencies.
     278  
          */
     279  
         public void analyzeDependencies() {
     280  
             //phase one initialize
     281  0
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     282  0
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     283  0
                 for (Analyzer a : analyzerList) {
     284  
                     try {
     285  0
                         a.initialize();
     286  0
                     } catch (Exception ex) {
     287  0
                         final String msg = String.format("\"Exception occurred initializing \"%s\".\"", a.getName());
     288  0
                         Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
     289  0
                         Logger.getLogger(Engine.class.getName()).log(Level.INFO, msg, ex);
     290  
                         try {
     291  0
                             a.close();
     292  0
                         } catch (Exception ex1) {
     293  0
                             Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1);
     294  0
                         }
     295  0
                     }
     296  
                 }
     297  
             }
     298  
     
     299  
             // analysis phases
     300  0
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     301  0
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     302  
     
     303  0
                 for (Analyzer a : analyzerList) {
     304  
                     /* need to create a copy of the collection because some of the
     305  
                      * analyzers may modify it. This prevents ConcurrentModificationExceptions.
     306  
                      * This is okay for adds/deletes because it happens per analyzer.
     307  
                      */
     308  0
                     final Set<Dependency> dependencySet = new HashSet<Dependency>();
     309  0
                     dependencySet.addAll(dependencies);
     310  0
                     for (Dependency d : dependencySet) {
     311  0
                         if (a.supportsExtension(d.getFileExtension())) {
     312  
                             try {
     313  0
                                 a.analyze(d, this);
     314  0
                             } catch (AnalysisException ex) {
     315  0
                                 d.addAnalysisException(ex);
     316  0
                             }
     317  
                         }
     318  
                     }
     319  0
                 }
     320  
             }
     321  
     
     322  
             //close/cleanup
     323  0
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     324  0
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     325  0
                 for (Analyzer a : analyzerList) {
     326  
                     try {
     327  0
                         a.close();
     328  0
                     } catch (Exception ex) {
     329  0
                         Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex);
     330  0
                     }
     331  
                 }
     332  
             }
     333  0
         }
     334  
     
     335  
         /**
     336  
          * Cycles through the cached web data sources and calls update on all of
     337  
          * them.
     338  
          */
     339  
         private void doUpdates() {
     340  0
             final UpdateService service = UpdateService.getInstance();
     341  0
             final Iterator<CachedWebDataSource> iterator = service.getDataSources();
     342  0
             while (iterator.hasNext()) {
     343  0
                 final CachedWebDataSource source = iterator.next();
     344  
                 try {
     345  0
                     source.update();
     346  0
                 } catch (UpdateException ex) {
     347  0
                     Logger.getLogger(Engine.class.getName()).log(Level.WARNING,
     348  
                             "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities.");
     349  0
                     Logger.getLogger(Engine.class.getName()).log(Level.FINE,
     350  
                             String.format("Unable to update details for %s", source.getClass().getName()), ex);
     351  0
                 }
     352  0
             }
     353  0
         }
     354  
     
     355  
         /**
     356  
          * Returns a full list of all of the analyzers. This is useful for reporting
     357  
          * which analyzers where used.
     358  
          *
     359  
          * @return a list of Analyzers
     360  
          */
     361  
         public List<Analyzer> getAnalyzers() {
     362  0
             final List<Analyzer> ret = new ArrayList<Analyzer>();
     363  0
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     364  0
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     365  0
                 ret.addAll(analyzerList);
     366  
             }
     367  0
             return ret;
     368  
         }
     369  
     
     370  
         /**
     371  
          * Checks all analyzers to see if an extension is supported.
     372  
          *
     373  
          * @param ext a file extension
     374  
          * @return true or false depending on whether or not the file extension is
     375  
          * supported
     376  
          */
     377  
         public boolean supportsExtension(String ext) {
     378  17691
             if (ext == null) {
     379  231
                 return false;
     380  
             }
     381  173184
             for (AnalysisPhase phase : AnalysisPhase.values()) {
     382  155901
                 final List<Analyzer> analyzerList = analyzers.get(phase);
     383  155901
                 for (Analyzer a : analyzerList) {
     384  138618
                     if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) {
     385  177
                         return true;
     386  
                     }
     387  
                 }
     388  
             }
     389  17283
             return false;
     390  
         }
     391  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AbstractAnalyzer.html new file mode 100644 index 000000000..e31d82245 --- /dev/null +++ b/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  138
     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  15
             final Set<String> set = new HashSet<String>();
     44  
     
     45  15
             Collections.addAll(set, strings);
     46  15
             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  3
         }
     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  3
         }
     68  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisException.html new file mode 100644 index 000000000..574bb395b --- /dev/null +++ b/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 DownloadFailedException.
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalysisPhase.html new file mode 100644 index 000000000..f6446812b --- /dev/null +++ b/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  17496
     public enum AnalysisPhase {
     27  
     
     28  
         /**
     29  
          * Initialization phase.
     30  
          */
     31  3
         INITIAL,
     32  
         /**
     33  
          * Information collection phase.
     34  
          */
     35  3
         INFORMATION_COLLECTION,
     36  
         /**
     37  
          * Pre identifier analysis phase.
     38  
          */
     39  3
         PRE_IDENTIFIER_ANALYSIS,
     40  
         /**
     41  
          * Identifier analysis phase.
     42  
          */
     43  3
         IDENTIFIER_ANALYSIS,
     44  
         /**
     45  
          * Post identifier analysis phase.
     46  
          */
     47  3
         POST_IDENTIFIER_ANALYSIS,
     48  
         /**
     49  
          * Pre finding analysis phase.
     50  
          */
     51  3
         PRE_FINDING_ANALYSIS,
     52  
         /**
     53  
          * Finding analysis phase.
     54  
          */
     55  3
         FINDING_ANALYSIS,
     56  
         /**
     57  
          * Post analysis phase.
     58  
          */
     59  3
         POST_FINDING_ANALYSIS,
     60  
         /**
     61  
          * The final analysis phase.
     62  
          */
     63  3
         FINAL
     64  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.Analyzer.html new file mode 100644 index 000000000..f5edea9b7 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.AnalyzerService.html new file mode 100644 index 000000000..6a6da58b8 --- /dev/null +++ b/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  3
         private AnalyzerService() {
     43  3
             loader = ServiceLoader.load(Analyzer.class);
     44  3
         }
     45  
     
     46  
         /**
     47  
          * Retrieve the singleton instance of AnalyzerService.
     48  
          *
     49  
          * @return a singleton AnalyzerService.
     50  
          */
     51  
         public static synchronized AnalyzerService getInstance() {
     52  6
             if (service == null) {
     53  3
                 service = new AnalyzerService();
     54  
             }
     55  6
             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  6
             return loader.iterator();
     65  
         }
     66  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html new file mode 100644 index 000000000..8e9688681 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.ArchiveAnalyzer.html @@ -0,0 +1,542 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.ArchiveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    ArchiveAnalyzer
    72%
    71/98
    61%
    21/34
    4.556
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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 java.util.zip.ZipEntry;
     36  
     import java.util.zip.ZipInputStream;
     37  
     import org.h2.store.fs.FileUtils;
     38  
     import org.owasp.dependencycheck.Engine;
     39  
     import org.owasp.dependencycheck.dependency.Dependency;
     40  
     import org.owasp.dependencycheck.utils.Settings;
     41  
     
     42  
     /**
     43  
      * <p>An analyzer that works on archive files:
     44  
      * <ul>
     45  
      * <li><b>ZIP</b> - if it is determined to be a JAR, WAR or EAR a copy is made
     46  
      * and the copy is given the correct extension so that it will be correctly
     47  
      * analyzed.</li>
     48  
      * <li><b>WAR</b> - the WAR contents are extracted and added as dependencies to
     49  
      * the scan. The displayed path is relative to the WAR.</li>
     50  
      * <li><b>EAR</b> - the WAR contents are extracted and added as dependencies to
     51  
      * the scan. Any WAR files are also processed so that the contained JAR files
     52  
      * are added to the list of dependencies. The displayed path is relative to the
     53  
      * EAR.</li>
     54  
      * </ul></p>
     55  
      *
     56  
      * @author Jeremy Long (jeremy.long@owasp.org)
     57  
      */
     58  21
     public class ArchiveAnalyzer extends AbstractAnalyzer implements Analyzer {
     59  
     
     60  
         /**
     61  
          * The buffer size to use when extracting files from the archive.
     62  
          */
     63  
         private static final int BUFFER_SIZE = 4096;
     64  
         /**
     65  
          * The count of directories created during analysis. This is used for
     66  
          * creating temporary directories.
     67  
          */
     68  3
         private static int dirCount = 0;
     69  
         /**
     70  
          * The parent directory for the individual directories per archive.
     71  
          */
     72  21
         private File tempFileLocation = null;
     73  
         /**
     74  
          * The max scan depth that the analyzer will recursively extract nested
     75  
          * archives.
     76  
          */
     77  3
         private static final int MAX_SCAN_DEPTH = Settings.getInt("archive.scan.depth", 3);
     78  
         /**
     79  
          * Tracks the current scan/extraction depth for nested archives.
     80  
          */
     81  21
         private int scanDepth = 0;
     82  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     83  
         /**
     84  
          * The name of the analyzer.
     85  
          */
     86  
         private static final String ANALYZER_NAME = "Archive Analyzer";
     87  
         /**
     88  
          * The phase that this analyzer is intended to run in.
     89  
          */
     90  3
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL;
     91  
         /**
     92  
          * The set of file extensions supported by this analyzer.
     93  
          */
     94  3
         private static final Set<String> EXTENSIONS = newHashSet("zip", "ear", "war");
     95  
     
     96  
         /**
     97  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     98  
          *
     99  
          * @return a list of file EXTENSIONS supported by this analyzer.
     100  
          */
     101  
         public Set<String> getSupportedExtensions() {
     102  17472
             return EXTENSIONS;
     103  
         }
     104  
     
     105  
         /**
     106  
          * Returns the name of the analyzer.
     107  
          *
     108  
          * @return the name of the analyzer.
     109  
          */
     110  
         public String getName() {
     111  3
             return ANALYZER_NAME;
     112  
         }
     113  
     
     114  
         /**
     115  
          * Returns whether or not this analyzer can process the given extension.
     116  
          *
     117  
          * @param extension the file extension to test for support.
     118  
          * @return whether or not the specified file extension is supported by this
     119  
          * analyzer.
     120  
          */
     121  
         public boolean supportsExtension(String extension) {
     122  17649
             return EXTENSIONS.contains(extension);
     123  
         }
     124  
     
     125  
         /**
     126  
          * Returns the phase that the analyzer is intended to run in.
     127  
          *
     128  
          * @return the phase that the analyzer is intended to run in.
     129  
          */
     130  
         public AnalysisPhase getAnalysisPhase() {
     131  6
             return ANALYSIS_PHASE;
     132  
         }
     133  
         //</editor-fold>
     134  
     
     135  
         /**
     136  
          * The initialize method does nothing for this Analyzer.
     137  
          *
     138  
          * @throws Exception is thrown if there is an exception deleting or creating
     139  
          * temporary files
     140  
          */
     141  
         @Override
     142  
         public void initialize() throws Exception {
     143  6
             final String tmpDir = Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir"));
     144  6
             final File baseDir = new File(tmpDir);
     145  6
             tempFileLocation = File.createTempFile("check", "tmp", baseDir);
     146  6
             if (!tempFileLocation.delete()) {
     147  0
                 throw new AnalysisException("Unable to delete temporary file '" + tempFileLocation.getAbsolutePath() + "'.");
     148  
             }
     149  6
             if (!tempFileLocation.mkdirs()) {
     150  0
                 throw new AnalysisException("Unable to create directory '" + tempFileLocation.getAbsolutePath() + "'.");
     151  
             }
     152  6
         }
     153  
     
     154  
         /**
     155  
          * The close method does nothing for this Analyzer.
     156  
          *
     157  
          * @throws Exception thrown if there is an exception deleting temporary
     158  
          * files
     159  
          */
     160  
         @Override
     161  
         public void close() throws Exception {
     162  6
             if (tempFileLocation != null && tempFileLocation.exists()) {
     163  6
                 FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), true);
     164  
             }
     165  6
         }
     166  
     
     167  
         /**
     168  
          * Analyzes a given dependency. If the dependency is an archive, such as a
     169  
          * WAR or EAR, the contents are extracted, scanned, and added to the list of
     170  
          * dependencies within the engine.
     171  
          *
     172  
          * @param dependency the dependency to analyze
     173  
          * @param engine the engine scanning
     174  
          * @throws AnalysisException thrown if there is an analysis exception
     175  
          */
     176  
         @Override
     177  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     178  3
             final File f = new File(dependency.getActualFilePath());
     179  3
             final File tmpDir = getNextTempDirectory();
     180  3
             extractFiles(f, tmpDir, engine);
     181  
     
     182  
             //make a copy
     183  3
             final List<Dependency> dependencies = new ArrayList<Dependency>(engine.getDependencies());
     184  3
             engine.scan(tmpDir);
     185  3
             final List<Dependency> newDependencies = engine.getDependencies();
     186  3
             if (dependencies.size() != newDependencies.size()) {
     187  
                 //get the new dependencies
     188  3
                 final Set<Dependency> dependencySet = new HashSet<Dependency>();
     189  3
                 dependencySet.addAll(newDependencies);
     190  3
                 dependencySet.removeAll(dependencies);
     191  
     
     192  3
                 for (Dependency d : dependencySet) {
     193  
                     //fix the dependency's display name and path
     194  177
                     final String displayPath = String.format("%s%s",
     195  
                             dependency.getFilePath(),
     196  
                             d.getActualFilePath().substring(tmpDir.getAbsolutePath().length()));
     197  177
                     final String displayName = String.format("%s%s%s",
     198  
                             dependency.getFileName(),
     199  
                             File.separator,
     200  
                             d.getFileName());
     201  177
                     d.setFilePath(displayPath);
     202  177
                     d.setFileName(displayName);
     203  
     
     204  
                     //TODO - can we get more evidence from the parent? EAR contains module name, etc.
     205  
     
     206  
                     //analyze the dependency (i.e. extract files) if it is a supported type.
     207  177
                     if (this.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) {
     208  0
                         scanDepth += 1;
     209  0
                         analyze(d, engine);
     210  0
                         scanDepth -= 1;
     211  
                     }
     212  177
                 }
     213  
             }
     214  3
             Collections.sort(engine.getDependencies());
     215  3
         }
     216  
     
     217  
         /**
     218  
          * Retrieves the next temporary directory to extract an archive too.
     219  
          *
     220  
          * @return a directory
     221  
          * @throws AnalysisException thrown if unable to create temporary directory
     222  
          */
     223  
         private File getNextTempDirectory() throws AnalysisException {
     224  3
             dirCount += 1;
     225  3
             final File directory = new File(tempFileLocation, String.valueOf(dirCount));
     226  3
             if (!directory.mkdirs()) {
     227  0
                 throw new AnalysisException("Unable to create temp directory '" + directory.getAbsolutePath() + "'.");
     228  
             }
     229  3
             return directory;
     230  
         }
     231  
     
     232  
         /**
     233  
          * Extracts the contents of an archive into the specified directory.
     234  
          *
     235  
          * @param archive an archive file such as a WAR or EAR
     236  
          * @param extractTo a directory to extract the contents to
     237  
          * @param engine the scanning engine
     238  
          * @throws AnalysisException thrown if the archive is not found
     239  
          */
     240  
         private void extractFiles(File archive, File extractTo, Engine engine) throws AnalysisException {
     241  3
             if (archive == null || extractTo == null) {
     242  0
                 return;
     243  
             }
     244  
     
     245  3
             FileInputStream fis = null;
     246  3
             ZipInputStream zis = null;
     247  
     
     248  
             try {
     249  3
                 fis = new FileInputStream(archive);
     250  0
             } catch (FileNotFoundException ex) {
     251  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.INFO, null, ex);
     252  0
                 throw new AnalysisException("Archive file was not found.", ex);
     253  3
             }
     254  3
             zis = new ZipInputStream(new BufferedInputStream(fis));
     255  
             ZipEntry entry;
     256  
             try {
     257  18567
                 while ((entry = zis.getNextEntry()) != null) {
     258  18564
                     if (entry.isDirectory()) {
     259  873
                         final File d = new File(extractTo, entry.getName());
     260  873
                         if (!d.mkdirs()) {
     261  0
                             throw new AnalysisException("Unable to create '" + d.getAbsolutePath() + "'.");
     262  
                         }
     263  873
                     } else {
     264  17691
                         final File file = new File(extractTo, entry.getName());
     265  17691
                         final String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName());
     266  17691
                         if (engine.supportsExtension(ext)) {
     267  177
                             BufferedOutputStream bos = null;
     268  
                             FileOutputStream fos;
     269  
                             try {
     270  177
                                 fos = new FileOutputStream(file);
     271  177
                                 bos = new BufferedOutputStream(fos, BUFFER_SIZE);
     272  
                                 int count;
     273  177
                                 final byte data[] = new byte[BUFFER_SIZE];
     274  354765
                                 while ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) {
     275  354588
                                     bos.write(data, 0, count);
     276  
                                 }
     277  177
                                 bos.flush();
     278  0
                             } catch (FileNotFoundException ex) {
     279  0
                                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     280  0
                                 throw new AnalysisException("Unable to find file '" + file.getName() + "'.", ex);
     281  0
                             } catch (IOException ex) {
     282  0
                                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
     283  0
                                 throw new AnalysisException("IO Exception while parsing file '" + file.getName() + "'.", ex);
     284  
                             } finally {
     285  177
                                 if (bos != null) {
     286  
                                     try {
     287  177
                                         bos.close();
     288  0
                                     } catch (IOException ex) {
     289  0
                                         Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     290  177
                                     }
     291  
                                 }
     292  
                             }
     293  
                         }
     294  17691
                     }
     295  
                 }
     296  0
             } catch (IOException ex) {
     297  0
                 final String msg = String.format("Exception reading archive '%s'.", archive.getName());
     298  0
                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, msg, ex);
     299  0
                 throw new AnalysisException(msg, ex);
     300  
             } finally {
     301  0
                 try {
     302  3
                     zis.close();
     303  0
                 } catch (IOException ex) {
     304  0
                     Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     305  3
                 }
     306  0
             }
     307  3
         }
     308  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..ad5622c1d --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer.html @@ -0,0 +1,575 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyBundlingAnalyzer
    6%
    7/105
    0%
    0/94
    7.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.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.regex.Matcher;
     27  
     import java.util.regex.Pattern;
     28  
     import org.owasp.dependencycheck.Engine;
     29  
     import org.owasp.dependencycheck.dependency.Dependency;
     30  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     31  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     32  
     
     33  
     /**
     34  
      * <p>This analyzer ensures dependencies that should be grouped together, to
     35  
      * remove excess noise from the report, are grouped. An example would be Spring,
     36  
      * Spring Beans, Spring MVC, etc. If they are all for the same version and have
     37  
      * the same relative path then these should be grouped into a single dependency
     38  
      * under the core/main library.</p>
     39  
      * <p>Note, this grouping only works on dependencies with identified CVE
     40  
      * entries</p>
     41  
      *
     42  
      * @author Jeremy Long (jeremy.long@owasp.org)
     43  
      */
     44  3
     public class DependencyBundlingAnalyzer extends AbstractAnalyzer implements Analyzer {
     45  
     
     46  
         //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables">
     47  
         /**
     48  
          * A pattern for obtaining the first part of a filename.
     49  
          */
     50  3
         private static final Pattern STARTING_TEXT_PATTERN = Pattern.compile("^[a-zA-Z]*");
     51  
         /**
     52  
          * a flag indicating if this analyzer has run. This analyzer only runs once.
     53  
          */
     54  3
         private boolean analyzed = false;
     55  
         //</editor-fold>
     56  
         //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
     57  
         /**
     58  
          * The set of file extensions supported by this analyzer.
     59  
          */
     60  3
         private static final Set<String> EXTENSIONS = null;
     61  
         /**
     62  
          * The name of the analyzer.
     63  
          */
     64  
         private static final String ANALYZER_NAME = "Dependency Bundling Analyzer";
     65  
         /**
     66  
          * The phase that this analyzer is intended to run in.
     67  
          */
     68  3
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS;
     69  
     
     70  
         /**
     71  
          * Returns a list of file EXTENSIONS supported by this analyzer.
     72  
          *
     73  
          * @return a list of file EXTENSIONS supported by this analyzer.
     74  
          */
     75  
         public Set<String> getSupportedExtensions() {
     76  17289
             return EXTENSIONS;
     77  
         }
     78  
     
     79  
         /**
     80  
          * Returns the name of the analyzer.
     81  
          *
     82  
          * @return the name of the analyzer.
     83  
          */
     84  
         public String getName() {
     85  0
             return ANALYZER_NAME;
     86  
         }
     87  
     
     88  
         /**
     89  
          * Returns whether or not this analyzer can process the given extension.
     90  
          *
     91  
          * @param extension the file extension to test for support
     92  
          * @return whether or not the specified file extension is supported by this
     93  
          * analyzer.
     94  
          */
     95  
         public boolean supportsExtension(String extension) {
     96  0
             return true;
     97  
         }
     98  
     
     99  
         /**
     100  
          * Returns the phase that the analyzer is intended to run in.
     101  
          *
     102  
          * @return the phase that the analyzer is intended to run in.
     103  
          */
     104  
         public AnalysisPhase getAnalysisPhase() {
     105  3
             return ANALYSIS_PHASE;
     106  
         }
     107  
         //</editor-fold>
     108  
     
     109  
         /**
     110  
          * Analyzes a set of dependencies. If they have been found to have the same
     111  
          * base path and the same set of identifiers they are likely related. The
     112  
          * related dependencies are bundled into a single reportable item.
     113  
          *
     114  
          * @param ignore this analyzer ignores the dependency being analyzed
     115  
          * @param engine the engine that is scanning the dependencies
     116  
          * @throws AnalysisException is thrown if there is an error reading the JAR
     117  
          * file.
     118  
          */
     119  
         @Override
     120  
         public void analyze(Dependency ignore, Engine engine) throws AnalysisException {
     121  0
             if (!analyzed) {
     122  0
                 analyzed = true;
     123  0
                 final Set<Dependency> dependenciesToRemove = new HashSet<Dependency>();
     124  0
                 final ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator();
     125  
                 //for (Dependency nextDependency : engine.getDependencies()) {
     126  0
                 while (mainIterator.hasNext()) {
     127  0
                     final Dependency dependency = mainIterator.next();
     128  0
                     if (mainIterator.hasNext()) {
     129  0
                         final ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex());
     130  0
                         while (subIterator.hasNext()) {
     131  0
                             final Dependency nextDependency = subIterator.next();
     132  
     
     133  0
                             if (identifiersMatch(dependency, nextDependency)
     134  
                                     && hasSameBasePath(dependency, nextDependency)
     135  
                                     && fileNameMatch(dependency, nextDependency)) {
     136  
     
     137  0
                                 if (isCore(dependency, nextDependency)) {
     138  0
                                     dependency.addRelatedDependency(nextDependency);
     139  
                                     //move any "related dependencies" to the new "parent" dependency
     140  0
                                     final Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator();
     141  0
                                     while (i.hasNext()) {
     142  0
                                         dependency.addRelatedDependency(i.next());
     143  0
                                         i.remove();
     144  
                                     }
     145  0
                                     dependenciesToRemove.add(nextDependency);
     146  0
                                 } else {
     147  0
                                     if (isCore(nextDependency, dependency)) {
     148  0
                                         nextDependency.addRelatedDependency(dependency);
     149  
                                         //move any "related dependencies" to the new "parent" dependency
     150  0
                                         final Iterator<Dependency> i = dependency.getRelatedDependencies().iterator();
     151  0
                                         while (i.hasNext()) {
     152  0
                                             nextDependency.addRelatedDependency(i.next());
     153  0
                                             i.remove();
     154  
                                         }
     155  0
                                         dependenciesToRemove.add(dependency);
     156  
                                     }
     157  
                                 }
     158  
                             }
     159  0
                         }
     160  
                     }
     161  0
                 }
     162  
                 //removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions
     163  
                 // was difficult because of the inner iterator.
     164  0
                 for (Dependency d : dependenciesToRemove) {
     165  0
                     engine.getDependencies().remove(d);
     166  
                 }
     167  
             }
     168  0
         }
     169  
     
     170  
         /**
     171  
          * Attempts to trim a maven repo to a common base path. This is typically
     172  
          * [drive]\[repo_location]\repository\[path1]\[path2].
     173  
          *
     174  
          * @param path the path to trim
     175  
          * @return a string representing the base path.
     176  
          */
     177  
         private String getBaseRepoPath(final String path) {
     178  0
             int pos = path.indexOf("repository" + File.separator) + 11;
     179  0
             if (pos < 0) {
     180  0
                 return path;
     181  
             }
     182  0
             int tmp = path.indexOf(File.separator, pos);
     183  0
             if (tmp <= 0) {
     184  0
                 return path;
     185  
             }
     186  0
             if (tmp > 0) {
     187  0
                 pos = tmp + 1;
     188  
             }
     189  0
             tmp = path.indexOf(File.separator, pos);
     190  0
             if (tmp > 0) {
     191  0
                 pos = tmp + 1;
     192  
             }
     193  0
             return path.substring(0, pos);
     194  
         }
     195  
     
     196  
         /**
     197  
          * Returns true if the file names (and version if it exists) of the two
     198  
          * dependencies are sufficiently similiar.
     199  
          *
     200  
          * @param dependency1 a dependency2 to compare
     201  
          * @param dependency2 a dependency2 to compare
     202  
          * @return true if the identifiers in the two supplied dependencies are
     203  
          * equal
     204  
          */
     205  
         private boolean fileNameMatch(Dependency dependency1, Dependency dependency2) {
     206  0
             if (dependency1 == null || dependency1.getFileName() == null
     207  
                     || dependency2 == null || dependency2.getFileName() == null) {
     208  0
                 return false;
     209  
             }
     210  0
             String fileName1 = dependency1.getFileName();
     211  0
             String fileName2 = dependency2.getFileName();
     212  
     
     213  
             //update to deal with archive analyzer, the starting name maybe the same
     214  
             // as this is incorrectly looking at the starting path
     215  0
             final File one = new File(fileName1);
     216  0
             final File two = new File(fileName2);
     217  0
             final String oneParent = one.getParent();
     218  0
             final String twoParent = two.getParent();
     219  0
             if (oneParent != null) {
     220  0
                 if (twoParent != null && oneParent.equals(twoParent)) {
     221  0
                     fileName1 = one.getName();
     222  0
                     fileName2 = two.getName();
     223  
                 } else {
     224  0
                     return false;
     225  
                 }
     226  0
             } else if (twoParent != null) {
     227  0
                 return false;
     228  
             }
     229  
     
     230  
             //version check
     231  0
             final DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1);
     232  0
             final DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2);
     233  0
             if (version1 != null && version2 != null) {
     234  0
                 if (!version1.equals(version2)) {
     235  0
                     return false;
     236  
                 }
     237  
             }
     238  
     
     239  
             //filename check
     240  0
             final Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1);
     241  0
             final Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2);
     242  0
             if (match1.find() && match2.find()) {
     243  0
                 return match1.group().equals(match2.group());
     244  
             }
     245  
     
     246  0
             return false;
     247  
         }
     248  
     
     249  
         /**
     250  
          * Returns true if the identifiers in the two supplied dependencies are
     251  
          * equal.
     252  
          *
     253  
          * @param dependency1 a dependency2 to compare
     254  
          * @param dependency2 a dependency2 to compare
     255  
          * @return true if the identifiers in the two supplied dependencies are
     256  
          * equal
     257  
          */
     258  
         private boolean identifiersMatch(Dependency dependency1, Dependency dependency2) {
     259  0
             if (dependency1 == null || dependency1.getIdentifiers() == null
     260  
                     || dependency2 == null || dependency2.getIdentifiers() == null) {
     261  0
                 return false;
     262  
             }
     263  0
             return dependency1.getIdentifiers().size() > 0
     264  
                     && dependency2.getIdentifiers().equals(dependency1.getIdentifiers());
     265  
         }
     266  
     
     267  
         /**
     268  
          * Determines if the two dependencies have the same base path.
     269  
          *
     270  
          * @param dependency1 a Dependency object
     271  
          * @param dependency2 a Dependency object
     272  
          * @return true if the base paths of the dependencies are identical
     273  
          */
     274  
         private boolean hasSameBasePath(Dependency dependency1, Dependency dependency2) {
     275  0
             if (dependency1 == null || dependency2 == null) {
     276  0
                 return false;
     277  
             }
     278  0
             final File lFile = new File(dependency1.getFilePath());
     279  0
             String left = lFile.getParent();
     280  0
             final File rFile = new File(dependency2.getFilePath());
     281  0
             String right = rFile.getParent();
     282  0
             if (left == null) {
     283  0
                 if (right == null) {
     284  0
                     return true;
     285  
                 }
     286  0
                 return false;
     287  
             }
     288  0
             if (left.equalsIgnoreCase(right)) {
     289  0
                 return true;
     290  
             }
     291  0
             if (left.matches(".*[/\\\\]repository[/\\\\].*") && right.matches(".*[/\\\\]repository[/\\\\].*")) {
     292  0
                 left = getBaseRepoPath(left);
     293  0
                 right = getBaseRepoPath(right);
     294  
             }
     295  0
             return left.equalsIgnoreCase(right);
     296  
         }
     297  
     
     298  
         /**
     299  
          * This is likely a very broken attempt at determining if the 'left'
     300  
          * dependency is the 'core' library in comparison to the 'right' library.
     301  
          *
     302  
          * TODO - consider splitting on /\._-\s/ and checking if all of one side is
     303  
          * fully contained in the other With the exception of the word "core". This
     304  
          * might work even on groups when we don't have a CVE.
     305  
          *
     306  
          * @param left the dependency to test
     307  
          * @param right the dependency to test against
     308  
          * @return a boolean indicating whether or not the left dependency should be
     309  
          * considered the "core" version.
     310  
          */
     311  
         private boolean isCore(Dependency left, Dependency right) {
     312  0
             final String leftName = left.getFileName().toLowerCase();
     313  0
             final String rightName = right.getFileName().toLowerCase();
     314  
     
     315  0
             if (rightName.contains("core") && !leftName.contains("core")) {
     316  0
                 return false;
     317  0
             } else if (!rightName.contains("core") && leftName.contains("core")) {
     318  0
                 return true;
     319  
             } else {
     320  
                 //TODO should we be splitting the name on [-_(.\d)+] and seeing if the
     321  
                 //  parts are contained in the other side?
     322  0
                 if (leftName.length() > rightName.length()) {
     323  0
                     return false;
     324  
                 }
     325  0
                 return true;
     326  
             }
     327  
         }
     328  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html new file mode 100644 index 000000000..7c30974fe --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.html @@ -0,0 +1,589 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FalsePositiveAnalyzer
    56%
    53/93
    34%
    26/76
    5.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.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  18
     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  3
         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  3
         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  17289
             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  0
             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  0
             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  3
             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
             removeSpuriousCPE(dependency);
     113  15
             addFalseNegativeCPEs(dependency);
     114  15
         }
     115  
     
     116  
         /**
     117  
          * <p>Intended to remove spurious CPE entries. By spurious we mean
     118  
          * duplicate, less specific CPE entries.</p>
     119  
          * <p>Example:</p>
     120  
          * <code>
     121  
          * cpe:/a:some-vendor:some-product
     122  
          * cpe:/a:some-vendor:some-product:1.5
     123  
          * cpe:/a:some-vendor:some-product:1.5.2
     124  
          * </code>
     125  
          * <p>Should be trimmed to:</p>
     126  
          * <code>
     127  
          * cpe:/a:some-vendor:some-product:1.5.2
     128  
          * </code>
     129  
          *
     130  
          * @param dependency the dependency being analyzed
     131  
          */
     132  
         private void removeSpuriousCPE(Dependency dependency) {
     133  15
             final List<Identifier> ids = new ArrayList<Identifier>();
     134  15
             ids.addAll(dependency.getIdentifiers());
     135  15
             Collections.sort(ids);
     136  15
             final ListIterator<Identifier> mainItr = ids.listIterator();
     137  24
             while (mainItr.hasNext()) {
     138  9
                 final Identifier currentId = mainItr.next();
     139  9
                 final VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue());
     140  9
                 if (currentCpe == null) {
     141  0
                     continue;
     142  
                 }
     143  9
                 final ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex());
     144  9
                 while (subItr.hasNext()) {
     145  0
                     final Identifier nextId = subItr.next();
     146  0
                     final VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue());
     147  0
                     if (nextCpe == null) {
     148  0
                         continue;
     149  
                     }
     150  
                     //TODO fix the version problem below
     151  0
                     if (currentCpe.getVendor().equals(nextCpe.getVendor())) {
     152  0
                         if (currentCpe.getProduct().equals(nextCpe.getProduct())) {
     153  
                             // see if one is contained in the other.. remove the contained one from dependency.getIdentifier
     154  0
                             final String currentVersion = currentCpe.getVersion();
     155  0
                             final String nextVersion = nextCpe.getVersion();
     156  0
                             if (currentVersion == null && nextVersion == null) {
     157  
                                 //how did we get here?
     158  0
                             } else if (currentVersion == null && nextVersion != null) {
     159  0
                                 dependency.getIdentifiers().remove(currentId);
     160  0
                             } else if (nextVersion == null && currentVersion != null) {
     161  0
                                 dependency.getIdentifiers().remove(nextId);
     162  0
                             } else if (currentVersion.length() < nextVersion.length()) {
     163  0
                                 if (nextVersion.startsWith(currentVersion) || "-".equals(currentVersion)) {
     164  0
                                     dependency.getIdentifiers().remove(currentId);
     165  
                                 }
     166  
                             } else {
     167  0
                                 if (currentVersion.startsWith(nextVersion) || "-".equals(nextVersion)) {
     168  0
                                     dependency.getIdentifiers().remove(nextId);
     169  
                                 }
     170  
                             }
     171  
                         }
     172  
                     }
     173  0
                 }
     174  9
             }
     175  15
         }
     176  
         /**
     177  
          * Regex to identify core java libraries and a few other commonly
     178  
          * misidentified ones.
     179  
          */
     180  3
         public static final Pattern CORE_JAVA = Pattern.compile("^cpe:/a:(sun|oracle|ibm):(j2[ems]e|"
     181  
                 + "java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|"
     182  
                 + "jdk|jre|jsf|jsse)($|:.*)");
     183  
         /**
     184  
          * Regex to identify core java library files. This is currently incomplete.
     185  
          */
     186  3
         public static final Pattern CORE_FILES = Pattern.compile("^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$");
     187  
     
     188  
         /**
     189  
          * Removes any CPE entries for the JDK/JRE unless the filename ends with
     190  
          * rt.jar
     191  
          *
     192  
          * @param dependency the dependency to remove JRE CPEs from
     193  
          */
     194  
         private void removeJreEntries(Dependency dependency) {
     195  15
             final Set<Identifier> identifiers = dependency.getIdentifiers();
     196  15
             final Iterator<Identifier> itr = identifiers.iterator();
     197  24
             while (itr.hasNext()) {
     198  9
                 final Identifier i = itr.next();
     199  9
                 final Matcher coreCPE = CORE_JAVA.matcher(i.getValue());
     200  9
                 final Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName());
     201  9
                 if (coreCPE.matches() && !coreFiles.matches()) {
     202  0
                     itr.remove();
     203  
                 }
     204  
     
     205  
                 //replacecd with the regex above.
     206  
                 //            if (("cpe:/a:sun:java".equals(i.getValue())
     207  
                 //                    || "cpe:/a:oracle:java".equals(i.getValue())
     208  
                 //                    || "cpe:/a:ibm:java".equals(i.getValue())
     209  
                 //                    || "cpe:/a:sun:j2se".equals(i.getValue())
     210  
                 //                    || "cpe:/a:oracle:j2se".equals(i.getValue())
     211  
                 //                    || i.getValue().startsWith("cpe:/a:sun:java:")
     212  
                 //                    || i.getValue().startsWith("cpe:/a:sun:j2se:")
     213  
                 //                    || i.getValue().startsWith("cpe:/a:sun:java:jre")
     214  
                 //                    || i.getValue().startsWith("cpe:/a:sun:java:jdk")
     215  
                 //                    || i.getValue().startsWith("cpe:/a:sun:java_se")
     216  
                 //                    || i.getValue().startsWith("cpe:/a:oracle:java_se")
     217  
                 //                    || i.getValue().startsWith("cpe:/a:oracle:java:")
     218  
                 //                    || i.getValue().startsWith("cpe:/a:oracle:j2se:")
     219  
                 //                    || i.getValue().startsWith("cpe:/a:oracle:jre")
     220  
                 //                    || i.getValue().startsWith("cpe:/a:oracle:jdk")
     221  
                 //                    || i.getValue().startsWith("cpe:/a:ibm:java:"))
     222  
                 //                    && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) {
     223  
                 //                itr.remove();
     224  
                 //            }
     225  9
             }
     226  15
         }
     227  
     
     228  
         /**
     229  
          * Parses a CPE string into an IndexEntry.
     230  
          *
     231  
          * @param type the type of identifier
     232  
          * @param value the cpe identifier to parse
     233  
          * @return an VulnerableSoftware object constructed from the identifier
     234  
          */
     235  
         private VulnerableSoftware parseCpe(String type, String value) {
     236  9
             if (!"cpe".equals(type)) {
     237  0
                 return null;
     238  
             }
     239  9
             final VulnerableSoftware cpe = new VulnerableSoftware();
     240  
             try {
     241  9
                 cpe.parseName(value);
     242  0
             } catch (UnsupportedEncodingException ex) {
     243  0
                 Logger.getLogger(FalsePositiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     244  0
                 return null;
     245  9
             }
     246  9
             return cpe;
     247  
         }
     248  
     
     249  
         /**
     250  
          * Removes bad CPE matches for a dependency. Unfortunately, right now these
     251  
          * are hard-coded patches for specific problems identified when testing this
     252  
          * on a LARGE volume of jar files.
     253  
          *
     254  
          * @param dependency the dependency to analyze
     255  
          */
     256  
         private void removeBadMatches(Dependency dependency) {
     257  15
             final Set<Identifier> identifiers = dependency.getIdentifiers();
     258  15
             final Iterator<Identifier> itr = identifiers.iterator();
     259  
     
     260  
             /* TODO - can we utilize the pom's groupid and artifactId to filter??? most of
     261  
              * these are due to low quality data.  Other idea would be to say any CPE
     262  
              * found based on LOW confidence evidence should have a different CPE type? (this
     263  
              * might be a better solution then just removing the URL for "best-guess" matches).
     264  
              */
     265  
     
     266  
             //Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid");
     267  
             //Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid");
     268  
     
     269  24
             while (itr.hasNext()) {
     270  9
                 final Identifier i = itr.next();
     271  
                 //TODO move this startswith expression to a configuration file?
     272  9
                 if ("cpe".equals(i.getType())) {
     273  9
                     if ((i.getValue().matches(".*c\\+\\+.*")
     274  
                             || i.getValue().startsWith("cpe:/a:jquery:jquery")
     275  
                             || i.getValue().startsWith("cpe:/a:prototypejs:prototype")
     276  
                             || i.getValue().startsWith("cpe:/a:yahoo:yui"))
     277  
                             && dependency.getFileName().toLowerCase().endsWith(".jar")) {
     278  0
                         itr.remove();
     279  9
                     } else if (i.getValue().startsWith("cpe:/a:file:file")
     280  
                             || i.getValue().startsWith("cpe:/a:mozilla:mozilla")
     281  
                             || i.getValue().startsWith("cpe:/a:ssh:ssh")) {
     282  0
                         itr.remove();
     283  
                     }
     284  
                 }
     285  9
             }
     286  15
         }
     287  
     
     288  
         /**
     289  
          * There are some known CPE entries, specifically regarding sun and oracle
     290  
          * products due to the acquisition and changes in product names, that based
     291  
          * on given evidence we can add the related CPE entries to ensure a complete
     292  
          * list of CVE entries.
     293  
          *
     294  
          * @param dependency the dependency being analyzed
     295  
          */
     296  
         private void addFalseNegativeCPEs(Dependency dependency) {
     297  15
             final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
     298  24
             while (itr.hasNext()) {
     299  9
                 final Identifier i = itr.next();
     300  9
                 if ("cpe".equals(i.getType()) && i.getValue() != null
     301  
                         && (i.getValue().startsWith("cpe:/a:oracle:opensso:")
     302  
                         || i.getValue().startsWith("cpe:/a:oracle:opensso_enterprise:")
     303  
                         || i.getValue().startsWith("cpe:/a:sun:opensso_enterprise:")
     304  
                         || i.getValue().startsWith("cpe:/a:sun:opensso:"))) {
     305  0
                     final String newCpe = String.format("cpe:/a:sun:opensso_enterprise:%s", i.getValue().substring(22));
     306  0
                     final String newCpe2 = String.format("cpe:/a:oracle:opensso_enterprise:%s", i.getValue().substring(22));
     307  0
                     final String newCpe3 = String.format("cpe:/a:sun:opensso:%s", i.getValue().substring(22));
     308  0
                     final String newCpe4 = String.format("cpe:/a:oracle:opensso:%s", i.getValue().substring(22));
     309  
                     try {
     310  0
                         dependency.addIdentifier("cpe",
     311  
                                 newCpe,
     312  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe, "UTF-8")));
     313  0
                         dependency.addIdentifier("cpe",
     314  
                                 newCpe2,
     315  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe2, "UTF-8")));
     316  0
                         dependency.addIdentifier("cpe",
     317  
                                 newCpe3,
     318  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe3, "UTF-8")));
     319  0
                         dependency.addIdentifier("cpe",
     320  
                                 newCpe4,
     321  
                                 String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe4, "UTF-8")));
     322  0
                     } catch (UnsupportedEncodingException ex) {
     323  0
                         Logger.getLogger(FalsePositiveAnalyzer.class
     324  
                                 .getName()).log(Level.FINE, null, ex);
     325  0
                     }
     326  
                 }
     327  9
             }
     328  15
         }
     329  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.FileNameAnalyzer.html new file mode 100644 index 000000000..81bc7b703 --- /dev/null +++ b/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  42
     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  3
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
     46  
         /**
     47  
          * The set of file extensions supported by this analyzer.
     48  
          */
     49  3
         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  17292
             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  3
             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  3
             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  6
             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  24
             final File f = new File(dependency.getFileName());
     103  24
             String fileName = f.getName();
     104  
     
     105  
             //remove file extension
     106  24
             final int pos = fileName.lastIndexOf(".");
     107  24
             if (pos > 0) {
     108  24
                 fileName = fileName.substring(0, pos);
     109  
             }
     110  
     
     111  
             //add version evidence
     112  24
             final DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);
     113  24
             if (version != null) {
     114  21
                 dependency.getVersionEvidence().addEvidence("file", "name",
     115  
                         version.toString(), Evidence.Confidence.HIGHEST);
     116  21
                 dependency.getVersionEvidence().addEvidence("file", "name",
     117  
                         fileName, Evidence.Confidence.MEDIUM);
     118  
             }
     119  
     
     120  
             //add as vendor and product evidence
     121  24
             if (fileName.contains("-")) {
     122  21
                 dependency.getProductEvidence().addEvidence("file", "name",
     123  
                         fileName, Evidence.Confidence.HIGHEST);
     124  21
                 dependency.getVendorEvidence().addEvidence("file", "name",
     125  
                         fileName, Evidence.Confidence.HIGHEST);
     126  
             } else {
     127  3
                 dependency.getProductEvidence().addEvidence("file", "name",
     128  
                         fileName, Evidence.Confidence.HIGH);
     129  3
                 dependency.getVendorEvidence().addEvidence("file", "name",
     130  
                         fileName, Evidence.Confidence.HIGH);
     131  
             }
     132  24
         }
     133  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.HintAnalyzer.html new file mode 100644 index 000000000..b64563170 --- /dev/null +++ b/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
    87%
    29/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  18
     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  3
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_IDENTIFIER_ANALYSIS;
     43  
         /**
     44  
          * The set of file extensions supported by this analyzer.
     45  
          */
     46  3
         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  17289
             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  0
             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  0
             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  3
             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  6
                 dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
     117  6
                 dependency.getVendorEvidence().addEvidence("hint analyzer", "vendor", "SpringSource", Evidence.Confidence.HIGH);
     118  6
                 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  6
                 dependency.getProductEvidence().addEvidence("hint analyzer", "product", "springsource_spring_framework", Evidence.Confidence.HIGH);
     124  6
                 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  162
             while (itr.hasNext()) {
     129  147
                 final Evidence e = itr.next();
     130  147
                 if ("sun".equalsIgnoreCase(e.getValue(false))) {
     131  6
                     final Evidence newEvidence = new Evidence(e.getSource() + " (hint)", e.getName(), "oracle", e.getConfidence());
     132  6
                     newEntries.add(newEvidence);
     133  6
                 } 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  147
             }
     138  15
             for (Evidence e : newEntries) {
     139  6
                 dependency.getVendorEvidence().addEvidence(e);
     140  
             }
     141  
     
     142  
     
     143  15
         }
     144  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html new file mode 100644 index 000000000..9f51af159 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JarAnalyzer.html @@ -0,0 +1,1829 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.analyzer.JarAnalyzer
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    JarAnalyzer
    80%
    320/399
    65%
    163/248
    6.103
    JarAnalyzer$ClassNameInformation
    80%
    17/21
    90%
    9/10
    6.103
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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  3
         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  3
         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  3
         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  3
         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  36
         public JarAnalyzer() {
     142  
             try {
     143  36
                 final JAXBContext jaxbContext = JAXBContext.newInstance("org.owasp.dependencycheck.jaxb.pom.generated");
     144  36
                 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  36
             }
     149  36
         }
     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  3
         private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;
     159  
         /**
     160  
          * The set of file extensions supported by this analyzer.
     161  
          */
     162  3
         private static final Set<String> EXTENSIONS = newHashSet("jar");
     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  17472
             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  3
             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  17463
             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  3
             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  36
                 final ArrayList<ClassNameInformation> classNames = collectClassNames(dependency);
     216  36
                 final String fileName = dependency.getFileName().toLowerCase();
     217  36
                 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  36
                 final boolean hasManifest = parseManifest(dependency, classNames);
     225  36
                 final boolean hasPOM = analyzePOM(dependency, classNames);
     226  36
                 final boolean addPackagesAsEvidence = !(hasManifest && hasPOM);
     227  36
                 analyzePackageNames(classNames, dependency, addPackagesAsEvidence);
     228  0
             } catch (IOException ex) {
     229  0
                 throw new AnalysisException("Exception occurred reading the JAR file.", ex);
     230  36
             }
     231  36
         }
     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  36
             boolean foundSomething = false;
     246  
             final JarFile jar;
     247  
             try {
     248  36
                 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  36
             }
     257  
             List<String> pomEntries;
     258  
             try {
     259  36
                 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  36
             }
     268  36
             if (pomEntries.isEmpty()) {
     269  24
                 return false;
     270  
             }
     271  12
             if (pomEntries.size() > 1) { //need to sort out which pom we will use
     272  0
                 pomEntries = filterPomEntries(pomEntries, classes);
     273  
             }
     274  12
             for (String path : pomEntries) {
     275  12
                 Properties pomProperties = null;
     276  
                 try {
     277  12
                     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  12
                 }
     281  12
                 Model pom = null;
     282  
                 try {
     283  12
                     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  12
                 }
     295  12
                 foundSomething = setPomEvidence(dependency, pom, pomProperties, classes) || foundSomething;
     296  12
             }
     297  12
             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  12
             Properties pomProperties = null;
     314  12
             final String propPath = path.substring(0, path.length() - 7) + "pom.properies";
     315  12
             final ZipEntry propEntry = jar.getEntry(propPath);
     316  12
             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  12
             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  36
             final List<String> pomEntries = new ArrayList<String>();
     334  36
             final Enumeration<JarEntry> entries = jar.entries();
     335  12552
             while (entries.hasMoreElements()) {
     336  12516
                 final JarEntry entry = entries.nextElement();
     337  12516
                 final String entryName = (new File(entry.getName())).getName().toLowerCase();
     338  12516
                 if (!entry.isDirectory() && "pom.xml".equals(entryName)) {
     339  12
                     pomEntries.add(entry.getName());
     340  
                 }
     341  12516
             }
     342  36
             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  12
             final ZipEntry entry = jar.getEntry(path);
     357  12
             if (entry != null) { //should never be null
     358  12
                 Model m = null;
     359  
                 try {
     360  12
                     final XMLFilter filter = new MavenNamespaceFilter();
     361  12
                     final SAXParserFactory spf = SAXParserFactory.newInstance();
     362  12
                     final SAXParser sp = spf.newSAXParser();
     363  12
                     final XMLReader xr = sp.getXMLReader();
     364  12
                     filter.setParent(xr);
     365  12
                     final NonClosingStream stream = new NonClosingStream(jar.getInputStream(entry));
     366  12
                     final InputStreamReader reader = new InputStreamReader(stream, "UTF-8");
     367  12
                     final InputSource xml = new InputSource(reader);
     368  12
                     final SAXSource source = new SAXSource(filter, xml);
     369  12
                     final JAXBElement<Model> el = pomUnmarshaller.unmarshal(source, Model.class);
     370  12
                     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  12
                 }
     378  12
                 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  12
             boolean foundSomething = false;
     396  12
             if (pom == null) {
     397  0
                 return foundSomething;
     398  
             }
     399  12
             String groupid = interpolateString(pom.getGroupId(), pomProperties);
     400  12
             if (groupid != null && !groupid.isEmpty()) {
     401  9
                 if (groupid.startsWith("org.") || groupid.startsWith("com.")) {
     402  6
                     groupid = groupid.substring(4);
     403  
                 }
     404  9
                 foundSomething = true;
     405  9
                 dependency.getVendorEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.HIGH);
     406  9
                 dependency.getProductEvidence().addEvidence("pom", "groupid", groupid, Evidence.Confidence.LOW);
     407  9
                 addMatchingValues(classes, groupid, dependency.getVendorEvidence());
     408  9
                 addMatchingValues(classes, groupid, dependency.getProductEvidence());
     409  
             }
     410  12
             String artifactid = interpolateString(pom.getArtifactId(), pomProperties);
     411  12
             if (artifactid != null && !artifactid.isEmpty()) {
     412  12
                 if (artifactid.startsWith("org.") || artifactid.startsWith("com.")) {
     413  0
                     artifactid = artifactid.substring(4);
     414  
                 }
     415  12
                 foundSomething = true;
     416  12
                 dependency.getProductEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.HIGH);
     417  12
                 dependency.getVendorEvidence().addEvidence("pom", "artifactid", artifactid, Evidence.Confidence.LOW);
     418  12
                 addMatchingValues(classes, artifactid, dependency.getVendorEvidence());
     419  12
                 addMatchingValues(classes, artifactid, dependency.getProductEvidence());
     420  
             }
     421  
             //version
     422  12
             final String version = interpolateString(pom.getVersion(), pomProperties);
     423  12
             if (version != null && !version.isEmpty()) {
     424  6
                 foundSomething = true;
     425  6
                 dependency.getVersionEvidence().addEvidence("pom", "version", version, Evidence.Confidence.HIGHEST);
     426  
             }
     427  
             // org name
     428  12
             final Organization org = pom.getOrganization();
     429  12
             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  12
             final String pomName = interpolateString(pom.getName(), pomProperties);
     439  12
             if (pomName != null && !pomName.isEmpty()) {
     440  12
                 foundSomething = true;
     441  12
                 dependency.getProductEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
     442  12
                 dependency.getVendorEvidence().addEvidence("pom", "name", pomName, Evidence.Confidence.HIGH);
     443  12
                 addMatchingValues(classes, pomName, dependency.getVendorEvidence());
     444  12
                 addMatchingValues(classes, pomName, dependency.getProductEvidence());
     445  
             }
     446  
     
     447  
             //Description
     448  12
             if (pom.getDescription() != null) {
     449  6
                 foundSomething = true;
     450  6
                 final String description = interpolateString(pom.getDescription(), pomProperties);
     451  6
                 if (description != null && !description.isEmpty()) {
     452  6
                     addDescription(dependency, description, "pom", "description");
     453  6
                     addMatchingValues(classes, description, dependency.getVendorEvidence());
     454  6
                     addMatchingValues(classes, description, dependency.getProductEvidence());
     455  
                 }
     456  
             }
     457  
     
     458  
             //license
     459  12
             if (pom.getLicenses() != null) {
     460  3
                 String license = null;
     461  3
                 for (License lic : pom.getLicenses().getLicense()) {
     462  3
                     String tmp = null;
     463  3
                     if (lic.getName() != null) {
     464  3
                         tmp = interpolateString(lic.getName(), pomProperties);
     465  
                     }
     466  3
                     if (lic.getUrl() != null) {
     467  3
                         if (tmp == null) {
     468  0
                             tmp = interpolateString(lic.getUrl(), pomProperties);
     469  
                         } else {
     470  3
                             tmp += ": " + interpolateString(lic.getUrl(), pomProperties);
     471  
                         }
     472  
                     }
     473  3
                     if (tmp == null) {
     474  0
                         continue;
     475  
                     }
     476  3
                     if (HTML_DETECTION_PATTERN.matcher(tmp).find()) {
     477  0
                         tmp = Jsoup.parse(tmp).text();
     478  
                     }
     479  3
                     if (license == null) {
     480  3
                         license = tmp;
     481  
                     } else {
     482  0
                         license += "\n" + tmp;
     483  
                     }
     484  3
                 }
     485  3
                 if (license != null) {
     486  3
                     dependency.setLicense(license);
     487  
                 }
     488  
             }
     489  12
             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  36
             final HashMap<String, Integer> vendorIdentifiers = new HashMap<String, Integer>();
     506  36
             final HashMap<String, Integer> productIdentifiers = new HashMap<String, Integer>();
     507  36
             analyzeFullyQualifiedClassNames(classNames, vendorIdentifiers, productIdentifiers);
     508  
     
     509  36
             final int classCount = classNames.size();
     510  36
             final EvidenceCollection vendor = dependency.getVendorEvidence();
     511  36
             final EvidenceCollection product = dependency.getProductEvidence();
     512  
     
     513  36
             for (Map.Entry<String, Integer> entry : vendorIdentifiers.entrySet()) {
     514  333
                 final float ratio = entry.getValue() / (float) classCount;
     515  333
                 if (ratio > 0.5) {
     516  
                     //TODO remove weighting
     517  72
                     vendor.addWeighting(entry.getKey());
     518  72
                     if (addPackagesAsEvidence) {
     519  51
                         vendor.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
     520  
                     }
     521  
                 }
     522  333
             }
     523  36
             for (Map.Entry<String, Integer> entry : productIdentifiers.entrySet()) {
     524  5133
                 final float ratio = entry.getValue() / (float) classCount;
     525  5133
                 if (ratio > 0.5) {
     526  42
                     product.addWeighting(entry.getKey());
     527  42
                     if (addPackagesAsEvidence) {
     528  27
                         product.addEvidence("jar", "package", entry.getKey(), Evidence.Confidence.LOW);
     529  
                     }
     530  
                 }
     531  5133
             }
     532  36
         }
     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  36
             boolean foundSomething = false;
     550  36
             JarFile jar = null;
     551  
             try {
     552  36
                 jar = new JarFile(dependency.getActualFilePath());
     553  
     
     554  36
                 final Manifest manifest = jar.getManifest();
     555  36
                 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  36
                 final Attributes atts = manifest.getMainAttributes();
     568  
     
     569  36
                 final EvidenceCollection vendorEvidence = dependency.getVendorEvidence();
     570  36
                 final EvidenceCollection productEvidence = dependency.getProductEvidence();
     571  36
                 final EvidenceCollection versionEvidence = dependency.getVersionEvidence();
     572  
     
     573  36
                 final String source = "Manifest";
     574  
     
     575  36
                 for (Entry<Object, Object> entry : atts.entrySet()) {
     576  504
                     String key = entry.getKey().toString();
     577  504
                     String value = atts.getValue(key);
     578  504
                     if (HTML_DETECTION_PATTERN.matcher(value).find()) {
     579  0
                         value = Jsoup.parse(value).text();
     580  
                     }
     581  504
                     if (IGNORE_VALUES.contains(value)) {
     582  0
                         continue;
     583  504
                     } else if (key.equals(Attributes.Name.IMPLEMENTATION_TITLE.toString())) {
     584  18
                         foundSomething = true;
     585  18
                         productEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     586  18
                         addMatchingValues(classInformation, value, productEvidence);
     587  486
                     } else if (key.equals(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {
     588  24
                         foundSomething = true;
     589  24
                         versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     590  462
                     } else if (key.equals(Attributes.Name.IMPLEMENTATION_VENDOR.toString())) {
     591  12
                         foundSomething = true;
     592  12
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     593  12
                         addMatchingValues(classInformation, value, vendorEvidence);
     594  450
                     } else if (key.equals(Attributes.Name.IMPLEMENTATION_VENDOR_ID.toString())) {
     595  6
                         foundSomething = true;
     596  6
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     597  6
                         addMatchingValues(classInformation, value, vendorEvidence);
     598  444
                     } else if (key.equals(BUNDLE_DESCRIPTION)) {
     599  15
                         foundSomething = true;
     600  15
                         addDescription(dependency, value, "manifest", key);
     601  
                         //productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     602  15
                         addMatchingValues(classInformation, value, productEvidence);
     603  429
                     } else if (key.equals(BUNDLE_NAME)) {
     604  21
                         foundSomething = true;
     605  21
                         productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     606  21
                         addMatchingValues(classInformation, value, productEvidence);
     607  408
                     } else if (key.equals(BUNDLE_VENDOR)) {
     608  15
                         foundSomething = true;
     609  15
                         vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     610  15
                         addMatchingValues(classInformation, value, vendorEvidence);
     611  393
                     } else if (key.equals(BUNDLE_VERSION)) {
     612  21
                         foundSomething = true;
     613  21
                         versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
     614  372
                     } else if (key.equals(Attributes.Name.MAIN_CLASS.toString())) {
     615  9
                         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  363
                         key = key.toLowerCase();
     626  
     
     627  363
                         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  108
                             foundSomething = true;
     639  108
                             if (key.contains("version")) {
     640  18
                                 versionEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     641  90
                             } else if (key.contains("title")) {
     642  12
                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     643  12
                                 addMatchingValues(classInformation, value, productEvidence);
     644  78
                             } else if (key.contains("vendor")) {
     645  6
                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     646  6
                                 addMatchingValues(classInformation, value, vendorEvidence);
     647  72
                             } else if (key.contains("name")) {
     648  24
                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     649  24
                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
     650  24
                                 addMatchingValues(classInformation, value, vendorEvidence);
     651  24
                                 addMatchingValues(classInformation, value, productEvidence);
     652  48
                             } else if (key.contains("license")) {
     653  9
                                 addLicense(dependency, value);
     654  
                             } else {
     655  39
                                 if (key.contains("description")) {
     656  0
                                     addDescription(dependency, value, "manifest", key);
     657  
                                 } else {
     658  39
                                     productEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     659  39
                                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
     660  39
                                     addMatchingValues(classInformation, value, vendorEvidence);
     661  39
                                     addMatchingValues(classInformation, value, productEvidence);
     662  39
                                     if (value.matches(".*\\d.*")) {
     663  18
                                         final StringTokenizer tokenizer = new StringTokenizer(value, " ");
     664  90
                                         while (tokenizer.hasMoreElements()) {
     665  72
                                             final String s = tokenizer.nextToken();
     666  72
                                             if (s.matches("^[0-9.]+$")) {
     667  0
                                                 versionEvidence.addEvidence(source, key, s, Evidence.Confidence.LOW);
     668  
                                             }
     669  72
                                         }
     670  
                                     }
     671  
                                 }
     672  
                             }
     673  
                         }
     674  
                     }
     675  495
                 }
     676  
             } finally {
     677  36
                 if (jar != null) {
     678  36
                     jar.close();
     679  
                 }
     680  
             }
     681  36
             return foundSomething;
     682  
         }
     683  
     
     684  
         /**
     685  
          * Adds a description to the given dependency.
     686  
          *
     687  
          * @param dependency a dependency
     688  
          * @param description the description
     689  
          * @param source the source of the evidence
     690  
          * @param key the "name" of the evidence
     691  
          */
     692  
         private void addDescription(Dependency dependency, String description, String source, String key) {
     693  21
             if (dependency.getDescription() == null) {
     694  18
                 dependency.setDescription(description);
     695  
             }
     696  
             String desc;
     697  21
             if (HTML_DETECTION_PATTERN.matcher(description).find()) {
     698  0
                 desc = Jsoup.parse(description).text();
     699  
             } else {
     700  21
                 desc = description;
     701  
             }
     702  21
             dependency.setDescription(desc);
     703  21
             if (desc.length() > 100) {
     704  6
                 final int posSuchAs = desc.toLowerCase().indexOf("such as ", 100);
     705  6
                 final int posLike = desc.toLowerCase().indexOf("like ", 100);
     706  6
                 int pos = -1;
     707  6
                 if (posLike > 0 && posSuchAs > 0) {
     708  0
                     pos = posLike > posSuchAs ? posLike : posSuchAs;
     709  6
                 } else if (posLike > 0) {
     710  6
                     pos = posLike;
     711  0
                 } else if (posSuchAs > 0) {
     712  0
                     pos = posSuchAs;
     713  
                 }
     714  6
                 String descToUse = desc;
     715  6
                 if (pos > 0) {
     716  6
                     final StringBuilder sb = new StringBuilder(pos + 3);
     717  6
                     sb.append(desc.substring(0, pos));
     718  6
                     sb.append("...");
     719  6
                     descToUse = sb.toString();
     720  
                 }
     721  6
                 dependency.getProductEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
     722  6
                 dependency.getVendorEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
     723  6
             } else {
     724  15
                 dependency.getProductEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
     725  15
                 dependency.getVendorEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
     726  
             }
     727  21
         }
     728  
     
     729  
         /**
     730  
          * Adds a license to the given dependency.
     731  
          *
     732  
          * @param d a dependency
     733  
          * @param license the license
     734  
          */
     735  
         private void addLicense(Dependency d, String license) {
     736  9
             if (d.getLicense() == null) {
     737  9
                 d.setLicense(license);
     738  0
             } else if (!d.getLicense().contains(license)) {
     739  0
                 d.setLicense(d.getLicense() + NEWLINE + license);
     740  
             }
     741  9
         }
     742  
     
     743  
         /**
     744  
          * The initialize method does nothing for this Analyzer.
     745  
          */
     746  
         public void initialize() {
     747  
             //do nothing
     748  0
         }
     749  
     
     750  
         /**
     751  
          * The close method does nothing for this Analyzer.
     752  
          */
     753  
         public void close() {
     754  
             //do nothing
     755  0
         }
     756  
     
     757  
         /**
     758  
          * <p>A utility function that will interpolate strings based on values given
     759  
          * in the properties file. It will also interpolate the strings contained
     760  
          * within the properties file so that properties can reference other
     761  
          * properties.</p>
     762  
          * <p><b>Note:</b> if there is no property found the reference will be
     763  
          * removed. In other words, if the interpolated string will be replaced with
     764  
          * an empty string.
     765  
          * </p>
     766  
          * <p>Example:</p>
     767  
          * <code>
     768  
          * Properties p = new Properties();
     769  
          * p.setProperty("key", "value");
     770  
          * String s = interpolateString("'${key}' and '${nothing}'", p);
     771  
          * System.out.println(s);
     772  
          * </code>
     773  
          * <p>Will result in:</p>
     774  
          * <code>
     775  
          * 'value' and ''
     776  
          * </code>
     777  
          *
     778  
          * @param text the string that contains references to properties.
     779  
          * @param properties a collection of properties that may be referenced
     780  
          * within the text.
     781  
          * @return the interpolated text.
     782  
          */
     783  
         protected String interpolateString(String text, Properties properties) {
     784  81
             Properties props = properties;
     785  81
             if (text == null) {
     786  9
                 return text;
     787  
             }
     788  72
             if (props == null) {
     789  51
                 props = new Properties();
     790  
             }
     791  
     
     792  72
             final int pos = text.indexOf("${");
     793  72
             if (pos < 0) {
     794  63
                 return text;
     795  
             }
     796  9
             final int end = text.indexOf("}");
     797  9
             if (end < pos) {
     798  0
                 return text;
     799  
             }
     800  
     
     801  9
             final String propName = text.substring(pos + 2, end);
     802  9
             String propValue = interpolateString(props.getProperty(propName), props);
     803  9
             if (propValue == null) {
     804  0
                 propValue = "";
     805  
             }
     806  9
             final StringBuilder sb = new StringBuilder(propValue.length() + text.length());
     807  9
             sb.append(text.subSequence(0, pos));
     808  9
             sb.append(propValue);
     809  9
             sb.append(text.substring(end + 1));
     810  9
             return interpolateString(sb.toString(), props); //yes yes, this should be a loop...
     811  
         }
     812  
     
     813  
         /**
     814  
          * Determines if the key value pair from the manifest is for an "import"
     815  
          * type entry for package names.
     816  
          *
     817  
          * @param key the key from the manifest
     818  
          * @param value the value from the manifest
     819  
          * @return true or false depending on if it is believed the entry is an
     820  
          * "import" entry
     821  
          */
     822  
         private boolean isImportPackage(String key, String value) {
     823  114
             final Pattern packageRx = Pattern.compile("^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$");
     824  114
             if (packageRx.matcher(value).matches()) {
     825  0
                 return (key.contains("import") || key.contains("include"));
     826  
             }
     827  114
             return false;
     828  
         }
     829  
     
     830  
         /**
     831  
          * Cycles through an enumeration of JarEntries, contained within the
     832  
          * dependency, and returns a list of the class names. This does not include
     833  
          * core Java package names (i.e. java.* or javax.*).
     834  
          *
     835  
          * @param dependency the dependency being analyzed
     836  
          * @return an list of fully qualified class names
     837  
          */
     838  
         private ArrayList<ClassNameInformation> collectClassNames(Dependency dependency) {
     839  36
             final ArrayList<ClassNameInformation> classNames = new ArrayList<ClassNameInformation>();
     840  36
             JarFile jar = null;
     841  
             try {
     842  36
                 jar = new JarFile(dependency.getActualFilePath());
     843  36
                 final Enumeration entries = jar.entries();
     844  12552
                 while (entries.hasMoreElements()) {
     845  12516
                     final JarEntry entry = (JarEntry) entries.nextElement();
     846  12516
                     final String name = entry.getName().toLowerCase();
     847  
                     //no longer stripping "|com\\.sun" - there are some com.sun jar files with CVEs.
     848  12516
                     if (name.endsWith(".class") && !name.matches("^javax?\\..*$")) {
     849  10350
                         final ClassNameInformation className = new ClassNameInformation(name.substring(0, name.length() - 6));
     850  10350
                         classNames.add(className);
     851  
                     }
     852  12516
                 }
     853  0
             } catch (IOException ex) {
     854  0
                 final String msg = String.format("Unable to open jar file '%s'.", dependency.getFileName());
     855  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
     856  0
                 Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
     857  
             } finally {
     858  36
                 if (jar != null) {
     859  
                     try {
     860  36
                         jar.close();
     861  0
                     } catch (IOException ex) {
     862  0
                         Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, null, ex);
     863  36
                     }
     864  
                 }
     865  
             }
     866  36
             return classNames;
     867  
         }
     868  
     
     869  
         /**
     870  
          * Cycles through the list of class names and places the package levels 0-3
     871  
          * into the provided maps for vendor and product. This is helpful when
     872  
          * analyzing vendor/product as many times this is included in the package
     873  
          * name.
     874  
          *
     875  
          * @param classNames a list of class names
     876  
          * @param vendor HashMap of possible vendor names from package names (e.g.
     877  
          * owasp)
     878  
          * @param product HashMap of possible product names from package names (e.g.
     879  
          * dependencycheck)
     880  
          */
     881  
         private void analyzeFullyQualifiedClassNames(ArrayList<ClassNameInformation> classNames,
     882  
                 HashMap<String, Integer> vendor, HashMap<String, Integer> product) {
     883  36
             for (ClassNameInformation entry : classNames) {
     884  10350
                 final ArrayList<String> list = entry.getPackageStructure();
     885  10350
                 addEntry(vendor, list.get(0));
     886  
     
     887  10350
                 if (list.size() == 2) {
     888  0
                     addEntry(product, list.get(1));
     889  
                 }
     890  10350
                 if (list.size() == 3) {
     891  2226
                     addEntry(vendor, list.get(1));
     892  2226
                     addEntry(product, list.get(1));
     893  2226
                     addEntry(product, list.get(2));
     894  
                 }
     895  10350
                 if (list.size() >= 4) {
     896  8124
                     addEntry(vendor, list.get(1));
     897  8124
                     addEntry(vendor, list.get(2));
     898  8124
                     addEntry(product, list.get(1));
     899  8124
                     addEntry(product, list.get(2));
     900  8124
                     addEntry(product, list.get(3));
     901  
                 }
     902  10350
             }
     903  36
         }
     904  
     
     905  
         /**
     906  
          * Adds an entry to the specified collection and sets the Integer (e.g. the
     907  
          * count) to 1. If the entry already exists in the collection then the
     908  
          * Integer is incremented by 1.
     909  
          *
     910  
          * @param collection a collection of strings and their occurrence count
     911  
          * @param key the key to add to the collection
     912  
          */
     913  
         private void addEntry(HashMap<String, Integer> collection, String key) {
     914  57648
             if (collection.containsKey(key)) {
     915  52182
                 collection.put(key, collection.get(key) + 1);
     916  
             } else {
     917  5466
                 collection.put(key, 1);
     918  
             }
     919  57648
         }
     920  
     
     921  
         /**
     922  
          * Cycles through the collection of class name information to see if parts
     923  
          * of the package names are contained in the provided value. If found, it
     924  
          * will be added as the HIGHEST confidence evidence because we have more
     925  
          * then one source corroborating the value.
     926  
          *
     927  
          * @param classes a collection of class name information
     928  
          * @param value the value to check to see if it contains a package name
     929  
          * @param evidence the evidence collection to add new entries too
     930  
          */
     931  
         private void addMatchingValues(ArrayList<ClassNameInformation> classes, String value, EvidenceCollection evidence) {
     932  309
             if (value == null || value.isEmpty()) {
     933  0
                 return;
     934  
             }
     935  309
             final String text = value.toLowerCase();
     936  309
             for (ClassNameInformation cni : classes) {
     937  91014
                 for (String key : cni.getPackageStructure()) {
     938  350844
                     if (text.contains(key)) { //note, package structure elements are already lowercase.
     939  109401
                         evidence.addEvidence("jar", "package name", key, Evidence.Confidence.HIGHEST);
     940  
                     }
     941  
                 }
     942  
             }
     943  309
         }
     944  
     
     945  
         /**
     946  
          * <p><b>This is currently a failed implementation.</b> Part of the issue is
     947  
          * I was trying to solve the wrong problem. Instead of multiple POMs being
     948  
          * in the JAR to just add information about dependencies - I didn't realize
     949  
          * until later that I was looking at an uber-jar (aka fat-jar) that included
     950  
          * all of its dependencies.</p>
     951  
          * <p>I'm leaving this method in the source tree, entirely commented out
     952  
          * until a solution https://github.com/jeremylong/DependencyCheck/issues/11
     953  
          * has been implemented.</p>
     954  
          * <p>Takes a list of pom entries from a JAR file and attempts to filter it
     955  
          * down to the pom related to the jar (rather then the pom entry for a
     956  
          * dependency).</p>
     957  
          *
     958  
          * @param pomEntries a list of pom entries
     959  
          * @param classes a list of fully qualified classes from the JAR file
     960  
          * @return the list of pom entries that are associated with the jar being
     961  
          * analyzed rather then the dependent poms
     962  
          */
     963  
         private List<String> filterPomEntries(List<String> pomEntries, ArrayList<ClassNameInformation> classes) {
     964  0
             return pomEntries;
     965  
     //        final HashMap<String, Integer> usePoms = new HashMap<String, Integer>();
     966  
     //        final ArrayList<String> possiblePoms = new ArrayList<String>();
     967  
     //        for (String entry : pomEntries) {
     968  
     //            //todo validate that the starts with is correct... or does it start with a ./ or /?
     969  
     //            // is it different on different platforms?
     970  
     //            if (entry.startsWith("META-INF/maven/")) {
     971  
     //                //trim the meta-inf/maven and pom.xml...
     972  
     //                final String pomPath = entry.substring(15, entry.length() - 8).toLowerCase();
     973  
     //                final String[] parts = pomPath.split("/");
     974  
     //                if (parts == null || parts.length != 2) { //misplaced pom?
     975  
     //                    //TODO add logging to FINE
     976  
     //                    possiblePoms.add(entry);
     977  
     //                }
     978  
     //                parts[0] = parts[0].replace('.', '/');
     979  
     //                parts[1] = parts[1].replace('.', '/');
     980  
     //                for (ClassNameInformation cni : classes) {
     981  
     //                    final String name = cni.getName();
     982  
     //                    if (StringUtils.containsIgnoreCase(name, parts[0])) {
     983  
     //                        addEntry(usePoms, entry);
     984  
     //                    }
     985  
     //                    if (StringUtils.containsIgnoreCase(name, parts[1])) {
     986  
     //                        addEntry(usePoms, entry);
     987  
     //                    }
     988  
     //                }
     989  
     //            } else { // we have a JAR file with an incorrect POM layout...
     990  
     //                //TODO add logging to FINE
     991  
     //                possiblePoms.add(entry);
     992  
     //            }
     993  
     //        }
     994  
     //        List<String> retValue;
     995  
     //        if (usePoms.isEmpty()) {
     996  
     //            if (possiblePoms.isEmpty()) {
     997  
     //                retValue = pomEntries;
     998  
     //            } else {
     999  
     //                retValue = possiblePoms;
     1000  
     //            }
     1001  
     //        } else {
     1002  
     //            retValue = new ArrayList<String>();
     1003  
     //            int maxCount = 0;
     1004  
     //            for (Map.Entry<String, Integer> entry : usePoms.entrySet()) {
     1005  
     //                final int current = entry.getValue().intValue();
     1006  
     //                if (current > maxCount) {
     1007  
     //                    maxCount = current;
     1008  
     //                    retValue.clear();
     1009  
     //                    retValue.add(entry.getKey());
     1010  
     //                } else if (current == maxCount) {
     1011  
     //                    retValue.add(entry.getKey());
     1012  
     //                }
     1013  
     //            }
     1014  
     //        }
     1015  
     //        return retValue;
     1016  
         }
     1017  
     
     1018  
         /**
     1019  
          * Simple check to see if the attribute from a manifest is just a package
     1020  
          * name.
     1021  
          *
     1022  
          * @param key the key of the value to check
     1023  
          * @param value the value to check
     1024  
          * @return true if the value looks like a java package name, otherwise false
     1025  
          */
     1026  
         private boolean isPackage(String key, String value) {
     1027  
     
     1028  114
             return !key.matches(".*(version|title|vendor|name|license|description).*")
     1029  
                     && value.matches("^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$");
     1030  
         }
     1031  
     
     1032  
         /**
     1033  
          * Stores information about a class name.
     1034  
          */
     1035  
         protected static class ClassNameInformation {
     1036  
     
     1037  
             /**
     1038  
              * Stores information about a given class name. This class will keep the
     1039  
              * fully qualified class name and a list of the important parts of the
     1040  
              * package structure. Up to the first four levels of the package
     1041  
              * structure are stored, excluding a leading "org" or "com". Example:
     1042  
              * <code>ClassNameInformation obj = new ClassNameInformation("org.owasp.dependencycheck.analyzer.JarAnalyzer");
     1043  
              * System.out.println(obj.getName());
     1044  
              * for (String p : obj.getPackageStructure())
     1045  
              *     System.out.println(p);
     1046  
              * </code> Would result in:
     1047  
              * <code>org.owasp.dependencycheck.analyzer.JarAnalyzer
     1048  
              * owasp
     1049  
              * dependencycheck
     1050  
              * analyzer
     1051  
              * jaranalyzer</code>
     1052  
              *
     1053  
              * @param className a fully qualified class name
     1054  
              */
     1055  10350
             ClassNameInformation(String className) {
     1056  10350
                 name = className;
     1057  10350
                 if (name.contains("/")) {
     1058  10350
                     final String[] tmp = className.toLowerCase().split("/");
     1059  10350
                     int start = 0;
     1060  10350
                     int end = 3;
     1061  10350
                     if ("com".equals(tmp[0]) || "org".equals(tmp[0])) {
     1062  9069
                         start = 1;
     1063  9069
                         end = 4;
     1064  
                     }
     1065  10350
                     if (tmp.length <= end) {
     1066  2226
                         end = tmp.length - 1;
     1067  
                     }
     1068  49524
                     for (int i = start; i <= end; i++) {
     1069  39174
                         packageStructure.add(tmp[i]);
     1070  
                     }
     1071  10350
                 } else {
     1072  0
                     packageStructure.add(name);
     1073  
                 }
     1074  10350
             }
     1075  
             /**
     1076  
              * The fully qualified class name.
     1077  
              */
     1078  
             private String name;
     1079  
     
     1080  
             /**
     1081  
              * Get the value of name
     1082  
              *
     1083  
              * @return the value of name
     1084  
              */
     1085  
             public String getName() {
     1086  0
                 return name;
     1087  
             }
     1088  
     
     1089  
             /**
     1090  
              * Set the value of name
     1091  
              *
     1092  
              * @param name new value of name
     1093  
              */
     1094  
             public void setName(String name) {
     1095  0
                 this.name = name;
     1096  0
             }
     1097  
             /**
     1098  
              * Up to the first four levels of the package structure, excluding a
     1099  
              * leading "org" or "com".
     1100  
              */
     1101  10350
             private ArrayList<String> packageStructure = new ArrayList<String>();
     1102  
     
     1103  
             /**
     1104  
              * Get the value of packageStructure
     1105  
              *
     1106  
              * @return the value of packageStructure
     1107  
              */
     1108  
             public ArrayList<String> getPackageStructure() {
     1109  101364
                 return packageStructure;
     1110  
             }
     1111  
         }
     1112  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.analyzer.JavaScriptAnalyzer.html new file mode 100644 index 000000000..7a481b9b8 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.CachedWebDataSource.html new file mode 100644 index 000000000..d9e22f32a --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateException.html new file mode 100644 index 000000000..2f2b02aaf --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.UpdateService.html new file mode 100644 index 000000000..788bd639f --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CPEAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CPEAnalyzer.html new file mode 100644 index 000000000..05f86dd4b --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.CPEAnalyzer.html @@ -0,0 +1,1385 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.CPEAnalyzer
    +
     
    + + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CPEAnalyzer
    86%
    163/188
    83%
    97/116
    3.844
    CPEAnalyzer$IdentifierConfidence
    100%
    3/3
    N/A
    3.844
    CPEAnalyzer$IdentifierMatch
    38%
    15/39
    16%
    4/24
    3.844
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.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.analyzer.AnalysisException;
     39  
     import org.owasp.dependencycheck.analyzer.AnalysisPhase;
     40  
     import org.owasp.dependencycheck.data.lucene.LuceneUtils;
     41  
     import org.owasp.dependencycheck.dependency.Dependency;
     42  
     import org.owasp.dependencycheck.dependency.Evidence;
     43  
     import org.owasp.dependencycheck.dependency.Evidence.Confidence;
     44  
     import org.owasp.dependencycheck.dependency.EvidenceCollection;
     45  
     import org.owasp.dependencycheck.analyzer.Analyzer;
     46  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     47  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     48  
     import org.owasp.dependencycheck.dependency.Identifier;
     49  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     50  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     51  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     52  
     
     53  
     /**
     54  
      * CPEAnalyzer is a utility class that takes a project dependency and attempts
     55  
      * to discern if there is an associated CPE. It uses the evidence contained
     56  
      * within the dependency to search the Lucene index.
     57  
      *
     58  
      * @author Jeremy Long (jeremy.long@owasp.org)
     59  
      */
     60  30
     public class CPEAnalyzer implements Analyzer {
     61  
     
     62  
         /**
     63  
          * The maximum number of query results to return.
     64  
          */
     65  
         static final int MAX_QUERY_RESULTS = 25;
     66  
         /**
     67  
          * The weighting boost to give terms when constructing the Lucene query.
     68  
          */
     69  
         static final String WEIGHTING_BOOST = "^5";
     70  
         /**
     71  
          * A string representation of a regular expression defining characters
     72  
          * utilized within the CPE Names.
     73  
          */
     74  
         static final String CLEANSE_CHARACTER_RX = "[^A-Za-z0-9 ._-]";
     75  
         /**
     76  
          * A string representation of a regular expression used to remove all but
     77  
          * alpha characters.
     78  
          */
     79  
         static final String CLEANSE_NONALPHA_RX = "[^A-Za-z]*";
     80  
         /**
     81  
          * The additional size to add to a new StringBuilder to account for extra
     82  
          * data that will be written into the string.
     83  
          */
     84  
         static final int STRING_BUILDER_BUFFER = 20;
     85  
         /**
     86  
          * The CPE Index.
     87  
          */
     88  
         private Index cpe;
     89  
         /**
     90  
          * The CVE Database.
     91  
          */
     92  
         private CveDB cve;
     93  
     
     94  
         /**
     95  
          * Opens the data source.
     96  
          *
     97  
          * @throws IOException when the Lucene directory to be queried does not
     98  
          * exist or is corrupt.
     99  
          * @throws DatabaseException when the database throws an exception. This
     100  
          * usually occurs when the database is in use by another process.
     101  
          */
     102  
         public void open() throws IOException, DatabaseException {
     103  24
             cpe = new Index();
     104  24
             cpe.open();
     105  24
             cve = new CveDB();
     106  
             try {
     107  24
                 cve.open();
     108  0
             } catch (SQLException ex) {
     109  0
                 Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
     110  0
                 throw new DatabaseException("Unable to open the cve db", ex);
     111  0
             } catch (ClassNotFoundException ex) {
     112  0
                 Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
     113  0
                 throw new DatabaseException("Unable to open the cve db", ex);
     114  24
             }
     115  24
         }
     116  
     
     117  
         /**
     118  
          * Closes the data source.
     119  
          */
     120  
         @Override
     121  
         public void close() {
     122  24
             cpe.close();
     123  24
             cve.close();
     124  24
         }
     125  
     
     126  
         /**
     127  
          * Returns the status of the data source - is the index open.
     128  
          *
     129  
          * @return true or false.
     130  
          */
     131  
         public boolean isOpen() {
     132  22
             return (cpe != null) && cpe.isOpen();
     133  
         }
     134  
     
     135  
         /**
     136  
          * Ensures that the Lucene index is closed.
     137  
          *
     138  
          * @throws Throwable when a throwable is thrown.
     139  
          */
     140  
         @Override
     141  
         protected void finalize() throws Throwable {
     142  13
             super.finalize();
     143  13
             if (isOpen()) {
     144  0
                 close();
     145  
             }
     146  13
         }
     147  
     
     148  
         /**
     149  
          * Searches the data store of CPE entries, trying to identify the CPE for
     150  
          * the given dependency based on the evidence contained within. The
     151  
          * dependency passed in is updated with any identified CPE values.
     152  
          *
     153  
          * @param dependency the dependency to search for CPE entries on.
     154  
          * @throws CorruptIndexException is thrown when the Lucene index is corrupt.
     155  
          * @throws IOException is thrown when an IOException occurs.
     156  
          * @throws ParseException is thrown when the Lucene query cannot be parsed.
     157  
          */
     158  
         protected void determineCPE(Dependency dependency) throws CorruptIndexException, IOException, ParseException {
     159  27
             Confidence vendorConf = Confidence.HIGHEST;
     160  27
             Confidence productConf = Confidence.HIGHEST;
     161  
     
     162  27
             String vendors = addEvidenceWithoutDuplicateTerms("", dependency.getVendorEvidence(), vendorConf);
     163  27
             String products = addEvidenceWithoutDuplicateTerms("", dependency.getProductEvidence(), productConf);
     164  
     
     165  
             //boolean found = false;
     166  27
             int ctr = 0;
     167  
             do {
     168  108
                 if (!vendors.isEmpty() && !products.isEmpty()) {
     169  108
                     final List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),
     170  
                             dependency.getVendorEvidence().getWeighting());
     171  
     
     172  108
                     for (IndexEntry e : entries) {
     173  468
                         if (verifyEntry(e, dependency)) {
     174  
                             //found = true; // we found a vendor/product pair. Now find version from the cve db.
     175  39
                             final String vendor = e.getVendor();
     176  39
                             final String product = e.getProduct();
     177  
                             // cve.getVersions(vendor, product);
     178  39
                             determineIdentifiers(dependency, vendor, product);
     179  468
                         }
     180  
                     }
     181  
                 }
     182  
                 //if (!found) {
     183  108
                 vendorConf = reduceConfidence(vendorConf);
     184  108
                 if (dependency.getVendorEvidence().contains(vendorConf)) {
     185  
                     //vendors += " " + dependency.getVendorEvidence().toString(vendorConf);
     186  102
                     vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);
     187  
                 }
     188  108
                 productConf = reduceConfidence(productConf);
     189  108
                 if (dependency.getProductEvidence().contains(productConf)) {
     190  
                     //products += " " + dependency.getProductEvidence().toString(productConf);
     191  108
                     products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);
     192  
                 }
     193  
                 //}
     194  
                 //} while (!found && (++ctr) < 4);
     195  108
             } while ((++ctr) < 4);
     196  27
         }
     197  
     
     198  
         /**
     199  
          * Returns the text created by concatenating the text and the values from
     200  
          * the EvidenceCollection (filtered for a specific confidence). This
     201  
          * attempts to prevent duplicate terms from being added.<br/<br/> Note, if
     202  
          * the evidence is longer then 200 characters it will be truncated.
     203  
          *
     204  
          * @param text the base text.
     205  
          * @param ec an EvidenceCollection
     206  
          * @param confidenceFilter a Confidence level to filter the evidence by.
     207  
          * @return the new evidence text
     208  
          */
     209  
         private String addEvidenceWithoutDuplicateTerms(final String text, final EvidenceCollection ec, Confidence confidenceFilter) {
     210  264
             final String txt = (text == null) ? "" : text;
     211  264
             final StringBuilder sb = new StringBuilder(txt.length() + (20 * ec.size()));
     212  264
             sb.append(' ').append(txt).append(' ');
     213  264
             for (Evidence e : ec.iterator(confidenceFilter)) {
     214  672
                 String value = e.getValue();
     215  
     
     216  
                 //hack to get around the fact that lucene does a really good job of recognizing domains and not
     217  
                 // splitting them. TODO - put together a better lucene analyzer specific to the domain.
     218  672
                 if (value.startsWith("http://")) {
     219  48
                     value = value.substring(7).replaceAll("\\.", " ");
     220  
                 }
     221  672
                 if (value.startsWith("https://")) {
     222  0
                     value = value.substring(8).replaceAll("\\.", " ");
     223  
                 }
     224  672
                 if (sb.indexOf(" " + value + " ") < 0) {
     225  429
                     sb.append(value).append(' ');
     226  
                 }
     227  672
             }
     228  264
             return sb.toString().trim();
     229  
         }
     230  
     
     231  
         /**
     232  
          * Reduces the given confidence by one level. This returns LOW if the
     233  
          * confidence passed in is not HIGH.
     234  
          *
     235  
          * @param c the confidence to reduce.
     236  
          * @return One less then the confidence passed in.
     237  
          */
     238  
         private Confidence reduceConfidence(final Confidence c) {
     239  216
             if (c == Confidence.HIGHEST) {
     240  54
                 return Confidence.HIGH;
     241  162
             } else if (c == Confidence.HIGH) {
     242  54
                 return Confidence.MEDIUM;
     243  
             } else {
     244  108
                 return Confidence.LOW;
     245  
             }
     246  
         }
     247  
     
     248  
         /**
     249  
          * <p>Searches the Lucene CPE index to identify possible CPE entries
     250  
          * associated with the supplied vendor, product, and version.</p>
     251  
          *
     252  
          * <p>If either the vendorWeightings or productWeightings lists have been
     253  
          * populated this data is used to add weighting factors to the search.</p>
     254  
          *
     255  
          * @param vendor the text used to search the vendor field
     256  
          * @param product the text used to search the product field
     257  
          * @param vendorWeightings a list of strings to use to add weighting factors
     258  
          * to the vendor field
     259  
          * @param productWeightings Adds a list of strings that will be used to add
     260  
          * weighting factors to the product search
     261  
          * @return a list of possible CPE values
     262  
          * @throws CorruptIndexException when the Lucene index is corrupt
     263  
          * @throws IOException when the Lucene index is not found
     264  
          * @throws ParseException when the generated query is not valid
     265  
          */
     266  
         protected List<IndexEntry> searchCPE(String vendor, String product,
     267  
                 Set<String> vendorWeightings, Set<String> productWeightings)
     268  
                 throws CorruptIndexException, IOException, ParseException {
     269  111
             final ArrayList<IndexEntry> ret = new ArrayList<IndexEntry>(MAX_QUERY_RESULTS);
     270  
     
     271  111
             final String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);
     272  111
             if (searchString == null) {
     273  0
                 return ret;
     274  
             }
     275  
     
     276  111
             final TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);
     277  2820
             for (ScoreDoc d : docs.scoreDocs) {
     278  2709
                 final Document doc = cpe.getDocument(d.doc);
     279  2709
                 final IndexEntry entry = new IndexEntry();
     280  2709
                 entry.setVendor(doc.get(Fields.VENDOR));
     281  2709
                 entry.setProduct(doc.get(Fields.PRODUCT));
     282  2709
                 entry.setSearchScore(d.score);
     283  2709
                 if (!ret.contains(entry)) {
     284  474
                     ret.add(entry);
     285  
                 }
     286  
             }
     287  111
             return ret;
     288  
         }
     289  
     
     290  
         /**
     291  
          * <p>Builds a Lucene search string by properly escaping data and
     292  
          * constructing a valid search query.</p>
     293  
          *
     294  
          * <p>If either the possibleVendor or possibleProducts lists have been
     295  
          * populated this data is used to add weighting factors to the search string
     296  
          * generated.</p>
     297  
          *
     298  
          * @param vendor text to search the vendor field
     299  
          * @param product text to search the product field
     300  
          * @param vendorWeighting a list of strings to apply to the vendor to boost
     301  
          * the terms weight
     302  
          * @param productWeightings a list of strings to apply to the product to
     303  
          * boost the terms weight
     304  
          * @return the Lucene query
     305  
          */
     306  
         protected String buildSearch(String vendor, String product,
     307  
                 Set<String> vendorWeighting, Set<String> productWeightings) {
     308  123
             final String v = vendor; //.replaceAll("[^\\w\\d]", " ");
     309  123
             final String p = product; //.replaceAll("[^\\w\\d]", " ");
     310  123
             final StringBuilder sb = new StringBuilder(v.length() + p.length()
     311  
                     + Fields.PRODUCT.length() + Fields.VENDOR.length() + STRING_BUILDER_BUFFER);
     312  
     
     313  123
             if (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {
     314  0
                 return null;
     315  
             }
     316  123
             sb.append(" AND ");
     317  123
             if (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {
     318  0
                 return null;
     319  
             }
     320  123
             return sb.toString();
     321  
         }
     322  
     
     323  
         /**
     324  
          * This method constructs a Lucene query for a given field. The searchText
     325  
          * is split into separate words and if the word is within the list of
     326  
          * weighted words then an additional weighting is applied to the term as it
     327  
          * is appended into the query.
     328  
          *
     329  
          * @param sb a StringBuilder that the query text will be appended to.
     330  
          * @param field the field within the Lucene index that the query is
     331  
          * searching.
     332  
          * @param searchText text used to construct the query.
     333  
          * @param weightedText a list of terms that will be considered higher
     334  
          * importance when searching.
     335  
          * @return if the append was successful.
     336  
          */
     337  
         private boolean appendWeightedSearch(StringBuilder sb, String field, String searchText, Set<String> weightedText) {
     338  246
             sb.append(" ").append(field).append(":( ");
     339  
     
     340  246
             final String cleanText = cleanseText(searchText);
     341  
     
     342  246
             if ("".equals(cleanText)) {
     343  0
                 return false;
     344  
             }
     345  
     
     346  246
             if (weightedText == null || weightedText.isEmpty()) {
     347  36
                 LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);
     348  
             } else {
     349  210
                 final StringTokenizer tokens = new StringTokenizer(cleanText);
     350  2628
                 while (tokens.hasMoreElements()) {
     351  2418
                     final String word = tokens.nextToken();
     352  2418
                     String temp = null;
     353  2418
                     for (String weighted : weightedText) {
     354  4968
                         final String weightedStr = cleanseText(weighted);
     355  4968
                         if (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {
     356  492
                             temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;
     357  492
                             if (!word.equalsIgnoreCase(weightedStr)) {
     358  24
                                 temp += " " + LuceneUtils.escapeLuceneQuery(weightedStr) + WEIGHTING_BOOST;
     359  
                             }
     360  
                         }
     361  4968
                     }
     362  2418
                     if (temp == null) {
     363  1926
                         temp = LuceneUtils.escapeLuceneQuery(word);
     364  
                     }
     365  2418
                     sb.append(" ").append(temp);
     366  2418
                 }
     367  
             }
     368  246
             sb.append(" ) ");
     369  246
             return true;
     370  
         }
     371  
     
     372  
         /**
     373  
          * Removes characters from the input text that are not used within the CPE
     374  
          * index.
     375  
          *
     376  
          * @param text is the text to remove the characters from.
     377  
          * @return the text having removed some characters.
     378  
          */
     379  
         private String cleanseText(String text) {
     380  5214
             return text.replaceAll(CLEANSE_CHARACTER_RX, " ");
     381  
         }
     382  
     
     383  
         /**
     384  
          * Compares two strings after lower casing them and removing the non-alpha
     385  
          * characters.
     386  
          *
     387  
          * @param l string one to compare.
     388  
          * @param r string two to compare.
     389  
          * @return whether or not the two strings are similar.
     390  
          */
     391  
         private boolean equalsIgnoreCaseAndNonAlpha(String l, String r) {
     392  4968
             if (l == null || r == null) {
     393  0
                 return false;
     394  
             }
     395  
     
     396  4968
             final String left = l.replaceAll(CLEANSE_NONALPHA_RX, "");
     397  4968
             final String right = r.replaceAll(CLEANSE_NONALPHA_RX, "");
     398  4968
             return left.equalsIgnoreCase(right);
     399  
         }
     400  
     
     401  
         /**
     402  
          * Ensures that the CPE Identified matches the dependency. This validates
     403  
          * that the product, vendor, and version information for the CPE are
     404  
          * contained within the dependencies evidence.
     405  
          *
     406  
          * @param entry a CPE entry.
     407  
          * @param dependency the dependency that the CPE entries could be for.
     408  
          * @return whether or not the entry is valid.
     409  
          */
     410  
         private boolean verifyEntry(final IndexEntry entry, final Dependency dependency) {
     411  468
             boolean isValid = false;
     412  
     
     413  468
             if (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())
     414  
                     && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {
     415  
                 //&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())
     416  39
                 isValid = true;
     417  
             }
     418  468
             return isValid;
     419  
         }
     420  
     
     421  
         /**
     422  
          * Used to determine if the EvidenceCollection contains a specific string.
     423  
          *
     424  
          * @param ec an EvidenceCollection
     425  
          * @param text the text to search for
     426  
          * @return whether or not the EvidenceCollection contains the string
     427  
          */
     428  
         private boolean collectionContainsString(EvidenceCollection ec, String text) {
     429  
     
     430  
             //<editor-fold defaultstate="collapsed" desc="This code fold contains an old version of the code, delete once more testing is done">
     431  
             //        String[] splitText = text.split("[\\s_-]");
     432  
             //
     433  
             //        for (String search : splitText) {
     434  
             //            //final String search = text.replaceAll("[\\s_-]", "").toLowerCase();
     435  
             //            if (ec.containsUsedString(search)) {
     436  
             //                return true;
     437  
             //            }
     438  
             //        }
     439  
             //</editor-fold>
     440  
     
     441  
             //TODO - likely need to change the split... not sure if this will work for CPE with special chars
     442  513
             final String[] words = text.split("[\\s_-]");
     443  513
             final List<String> list = new ArrayList<String>();
     444  513
             String tempWord = null;
     445  1410
             for (String word : words) {
     446  
                 //single letter words should be concatonated with the next word.
     447  
                 // so { "m", "core", "sample" } -> { "mcore", "sample" }
     448  897
                 if (tempWord != null) {
     449  48
                     list.add(tempWord + word);
     450  48
                     tempWord = null;
     451  849
                 } else if (word.length() <= 2) {
     452  51
                     tempWord = word;
     453  
                 } else {
     454  798
                     list.add(word);
     455  
                 }
     456  
             }
     457  
     //        if (tempWord != null) {
     458  
     //            //for now ignore any last single letter words...
     459  
     //        }
     460  513
             boolean contains = true;
     461  513
             for (String word : list) {
     462  846
                 contains &= ec.containsUsedString(word);
     463  
             }
     464  513
             return contains;
     465  
         }
     466  
     
     467  
         /**
     468  
          * Analyzes a dependency and attempts to determine if there are any CPE
     469  
          * identifiers for this dependency.
     470  
          *
     471  
          * @param dependency The Dependency to analyze.
     472  
          * @param engine The analysis engine
     473  
          * @throws AnalysisException is thrown if there is an issue analyzing the
     474  
          * dependency.
     475  
          */
     476  
         @Override
     477  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     478  
             try {
     479  15
                 determineCPE(dependency);
     480  0
             } catch (CorruptIndexException ex) {
     481  0
                 throw new AnalysisException("CPE Index is corrupt.", ex);
     482  0
             } catch (IOException ex) {
     483  0
                 throw new AnalysisException("Failure opening the CPE Index.", ex);
     484  0
             } catch (ParseException ex) {
     485  0
                 throw new AnalysisException("Unable to parse the generated Lucene query for this dependency.", ex);
     486  15
             }
     487  15
         }
     488  
     
     489  
         /**
     490  
          * Returns true because this analyzer supports all dependency types.
     491  
          *
     492  
          * @return true.
     493  
          */
     494  
         @Override
     495  
         public Set<String> getSupportedExtensions() {
     496  17289
             return null;
     497  
         }
     498  
     
     499  
         /**
     500  
          * Returns the name of this analyzer.
     501  
          *
     502  
          * @return the name of this analyzer.
     503  
          */
     504  
         @Override
     505  
         public String getName() {
     506  0
             return "CPE Analyzer";
     507  
         }
     508  
     
     509  
         /**
     510  
          * Returns true because this analyzer supports all dependency types.
     511  
          *
     512  
          * @param extension the file extension of the dependency being analyzed.
     513  
          * @return true.
     514  
          */
     515  
         @Override
     516  
         public boolean supportsExtension(String extension) {
     517  0
             return true;
     518  
         }
     519  
     
     520  
         /**
     521  
          * Returns the analysis phase that this analyzer should run in.
     522  
          *
     523  
          * @return the analysis phase that this analyzer should run in.
     524  
          */
     525  
         @Override
     526  
         public AnalysisPhase getAnalysisPhase() {
     527  3
             return AnalysisPhase.IDENTIFIER_ANALYSIS;
     528  
         }
     529  
     
     530  
         /**
     531  
          * Opens the CPE Lucene Index.
     532  
          *
     533  
          * @throws Exception is thrown if there is an issue opening the index.
     534  
          */
     535  
         @Override
     536  
         public void initialize() throws Exception {
     537  0
             this.open();
     538  0
         }
     539  
     
     540  
         /**
     541  
          * Retrieves a list of CPE values from the CveDB based on the vendor and
     542  
          * product passed in. The list is then validated to find only CPEs that are
     543  
          * valid for the given dependency. It is possible that the CPE identified is
     544  
          * a best effort "guess" based on the vendor, product, and version
     545  
          * information.
     546  
          *
     547  
          * @param dependency the Dependency being analyzed
     548  
          * @param vendor the vendor for the CPE being analyzed
     549  
          * @param product the product for the CPE being analyzed
     550  
          * @throws UnsupportedEncodingException is thrown if UTF-8 is not supported
     551  
          */
     552  
         private void determineIdentifiers(Dependency dependency, String vendor, String product) throws UnsupportedEncodingException {
     553  39
             final Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);
     554  39
             DependencyVersion bestGuess = new DependencyVersion("-");
     555  39
             Confidence bestGuessConf = null;
     556  39
             final List<IdentifierMatch> collected = new ArrayList<IdentifierMatch>();
     557  195
             for (Confidence conf : Confidence.values()) {
     558  156
                 for (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {
     559  126
                     final DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());
     560  126
                     if (evVer == null) {
     561  0
                         continue;
     562  
                     }
     563  126
                     for (VulnerableSoftware vs : cpes) {
     564  
                         DependencyVersion dbVer;
     565  2757
                         if (vs.getRevision() != null && !vs.getRevision().isEmpty()) {
     566  495
                             dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + "." + vs.getRevision());
     567  
                         } else {
     568  2262
                             dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());
     569  
                         }
     570  2757
                         if (dbVer == null //special case, no version specified - everything is vulnerable
     571  
                                 || evVer.equals(dbVer)) { //woot exect match
     572  87
                             final String url = String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(vs.getName(), "UTF-8"));
     573  87
                             final IdentifierMatch match = new IdentifierMatch("cpe", vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);
     574  87
                             collected.add(match);
     575  87
                         } else {
     576  
                             //TODO the following isn't quite right is it? need to think about this guessing game a bit more.
     577  2670
                             if (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()
     578  
                                     && evVer.matchesAtLeastThreeLevels(dbVer)) {
     579  195
                                 if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
     580  15
                                     if (bestGuess.getVersionParts().size() < dbVer.getVersionParts().size()) {
     581  15
                                         bestGuess = dbVer;
     582  15
                                         bestGuessConf = conf;
     583  
                                     }
     584  
                                 }
     585  
                             }
     586  
                         }
     587  2757
                     }
     588  126
                     if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
     589  24
                         if (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {
     590  24
                             bestGuess = evVer;
     591  24
                             bestGuessConf = conf;
     592  
                         }
     593  
                     }
     594  126
                 }
     595  
             }
     596  39
             final String cpeName = String.format("cpe:/a:%s:%s:%s", vendor, product, bestGuess.toString());
     597  39
             final String url = null; //String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));
     598  39
             if (bestGuessConf == null) {
     599  0
                 bestGuessConf = Confidence.LOW;
     600  
             }
     601  39
             final IdentifierMatch match = new IdentifierMatch("cpe", cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);
     602  39
             collected.add(match);
     603  
     
     604  39
             Collections.sort(collected);
     605  39
             final IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();
     606  39
             final Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();
     607  39
             for (IdentifierMatch m : collected) {
     608  126
                 if (bestIdentifierQuality.equals(m.getConfidence())
     609  
                         && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {
     610  48
                     dependency.addIdentifier(m.getIdentifier());
     611  
                 }
     612  
             }
     613  39
         }
     614  
     
     615  
         /**
     616  
          * The confidence whether the identifier is an exact match, or a best guess.
     617  
          */
     618  9
         private enum IdentifierConfidence {
     619  
     
     620  
             /**
     621  
              * An exact match for the CPE.
     622  
              */
     623  3
             EXACT_MATCH,
     624  
             /**
     625  
              * A best guess for the CPE.
     626  
              */
     627  3
             BEST_GUESS
     628  
         }
     629  
     
     630  
         /**
     631  
          * A simple object to hold an identifier and carry information about the
     632  
          * confidence in the identifier.
     633  
          */
     634  117
         private static class IdentifierMatch implements Comparable<IdentifierMatch> {
     635  
     
     636  
             /**
     637  
              * Constructs an IdentiferMatch.
     638  
              *
     639  
              * @param type the type of identifier (such as CPE)
     640  
              * @param value the value of the identifier
     641  
              * @param url the URL of the identifier
     642  
              * @param identifierConfidence the confidence in the identifier: best
     643  
              * guess or exact match
     644  
              * @param evidenceConfidence the confidence of the evidence used to find
     645  
              * the identifier
     646  
              */
     647  126
             IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {
     648  126
                 this.identifier = new Identifier(type, value, url);
     649  126
                 this.confidence = identifierConfidence;
     650  126
                 this.evidenceConfidence = evidenceConfidence;
     651  126
             }
     652  
             //<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier">
     653  
             /**
     654  
              * The confidence in the evidence used to identify this match.
     655  
              */
     656  
             private Confidence evidenceConfidence;
     657  
     
     658  
             /**
     659  
              * Get the value of evidenceConfidence
     660  
              *
     661  
              * @return the value of evidenceConfidence
     662  
              */
     663  
             public Confidence getEvidenceConfidence() {
     664  135
                 return evidenceConfidence;
     665  
             }
     666  
     
     667  
             /**
     668  
              * Set the value of evidenceConfidence
     669  
              *
     670  
              * @param evidenceConfidence new value of evidenceConfidence
     671  
              */
     672  
             public void setEvidenceConfidence(Confidence evidenceConfidence) {
     673  0
                 this.evidenceConfidence = evidenceConfidence;
     674  0
             }
     675  
             /**
     676  
              * The confidence whether this is an exact match, or a best guess.
     677  
              */
     678  
             private IdentifierConfidence confidence;
     679  
     
     680  
             /**
     681  
              * Get the value of confidence.
     682  
              *
     683  
              * @return the value of confidence
     684  
              */
     685  
             public IdentifierConfidence getConfidence() {
     686  165
                 return confidence;
     687  
             }
     688  
     
     689  
             /**
     690  
              * Set the value of confidence.
     691  
              *
     692  
              * @param confidence new value of confidence
     693  
              */
     694  
             public void setConfidence(IdentifierConfidence confidence) {
     695  0
                 this.confidence = confidence;
     696  0
             }
     697  
             /**
     698  
              * The CPE identifier.
     699  
              */
     700  
             private Identifier identifier;
     701  
     
     702  
             /**
     703  
              * Get the value of identifier.
     704  
              *
     705  
              * @return the value of identifier
     706  
              */
     707  
             public Identifier getIdentifier() {
     708  48
                 return identifier;
     709  
             }
     710  
     
     711  
             /**
     712  
              * Set the value of identifier.
     713  
              *
     714  
              * @param identifier new value of identifier
     715  
              */
     716  
             public void setIdentifier(Identifier identifier) {
     717  0
                 this.identifier = identifier;
     718  0
             }
     719  
             //</editor-fold>
     720  
             //<editor-fold defaultstate="collapsed" desc="Standard implementations of toString, hashCode, and equals">
     721  
     
     722  
             /**
     723  
              * Standard toString() implementation.
     724  
              *
     725  
              * @return the string representation of the object
     726  
              */
     727  
             @Override
     728  
             public String toString() {
     729  0
                 return "IdentifierMatch{" + "evidenceConfidence=" + evidenceConfidence
     730  
                         + ", confidence=" + confidence + ", identifier=" + identifier + '}';
     731  
             }
     732  
     
     733  
             /**
     734  
              * Standard hashCode() implementation.
     735  
              *
     736  
              * @return the hashCode
     737  
              */
     738  
             @Override
     739  
             public int hashCode() {
     740  0
                 int hash = 5;
     741  0
                 hash = 97 * hash + (this.evidenceConfidence != null ? this.evidenceConfidence.hashCode() : 0);
     742  0
                 hash = 97 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
     743  0
                 hash = 97 * hash + (this.identifier != null ? this.identifier.hashCode() : 0);
     744  0
                 return hash;
     745  
             }
     746  
     
     747  
             /**
     748  
              * Standard equals implementation.
     749  
              *
     750  
              * @param obj the object to compare
     751  
              * @return true if the objects are equal, otherwise false
     752  
              */
     753  
             @Override
     754  
             public boolean equals(Object obj) {
     755  0
                 if (obj == null) {
     756  0
                     return false;
     757  
                 }
     758  0
                 if (getClass() != obj.getClass()) {
     759  0
                     return false;
     760  
                 }
     761  0
                 final IdentifierMatch other = (IdentifierMatch) obj;
     762  0
                 if (this.evidenceConfidence != other.evidenceConfidence) {
     763  0
                     return false;
     764  
                 }
     765  0
                 if (this.confidence != other.confidence) {
     766  0
                     return false;
     767  
                 }
     768  0
                 if (this.identifier != other.identifier && (this.identifier == null || !this.identifier.equals(other.identifier))) {
     769  0
                     return false;
     770  
                 }
     771  0
                 return true;
     772  
             }
     773  
             //</editor-fold>
     774  
     
     775  
             /**
     776  
              * Standard implementation of compareTo that compares identifier
     777  
              * confidence, evidence confidence, and then the identifier.
     778  
              *
     779  
              * @param o the IdentifierMatch to compare to
     780  
              * @return the natural ordering of IdentifierMatch
     781  
              */
     782  
             @Override
     783  
             public int compareTo(IdentifierMatch o) {
     784  117
                 int conf = this.confidence.compareTo(o.confidence);
     785  117
                 if (conf == 0) {
     786  87
                     conf = this.evidenceConfidence.compareTo(o.evidenceConfidence);
     787  87
                     if (conf == 0) {
     788  33
                         conf = identifier.compareTo(o.identifier);
     789  
                     }
     790  
                 }
     791  117
                 return conf;
     792  
             }
     793  
         }
     794  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Fields.html new file mode 100644 index 000000000..e40a4c456 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Index.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Index.html new file mode 100644 index 000000000..97eda7435 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.Index.html @@ -0,0 +1,330 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.cpe.Index
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Index
    64%
    22/34
    37%
    3/8
    1.625
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.File;
     22  
     import java.io.IOException;
     23  
     import java.util.HashMap;
     24  
     import java.util.Map;
     25  
     import org.apache.lucene.analysis.Analyzer;
     26  
     import org.apache.lucene.analysis.core.KeywordAnalyzer;
     27  
     import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
     28  
     import org.apache.lucene.document.Document;
     29  
     import org.apache.lucene.document.Field;
     30  
     import org.apache.lucene.document.TextField;
     31  
     import org.apache.lucene.index.CorruptIndexException;
     32  
     import org.apache.lucene.index.Term;
     33  
     import org.apache.lucene.queryparser.classic.QueryParser;
     34  
     import org.apache.lucene.store.Directory;
     35  
     import org.apache.lucene.store.FSDirectory;
     36  
     import org.apache.lucene.util.Version;
     37  
     import org.owasp.dependencycheck.data.lucene.AbstractIndex;
     38  
     import org.owasp.dependencycheck.utils.Settings;
     39  
     import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
     40  
     import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
     41  
     
     42  
     /**
     43  
      * The Index class is used to utilize and maintain the CPE Index.
     44  
      *
     45  
      * @author Jeremy Long (jeremy.long@owasp.org)
     46  
      */
     47  30
     public class Index extends AbstractIndex {
     48  
     
     49  
         /**
     50  
          * Returns the directory that holds the CPE Index.
     51  
          *
     52  
          * @return the Directory containing the CPE Index.
     53  
          * @throws IOException is thrown if an IOException occurs.
     54  
          */
     55  
         @Override
     56  
         public Directory getDirectory() throws IOException {
     57  30
             final File path = getDataDirectory();
     58  30
             return FSDirectory.open(path);
     59  
         }
     60  
     
     61  
         /**
     62  
          * Retrieves the directory that the JAR file exists in so that we can ensure
     63  
          * we always use a common data directory.
     64  
          *
     65  
          * @return the data directory for this index.
     66  
          * @throws IOException is thrown if an IOException occurs of course...
     67  
          */
     68  
         public File getDataDirectory() throws IOException {
     69  30
             final File path = Settings.getFile(Settings.KEYS.CPE_DATA_DIRECTORY);
     70  30
             if (!path.exists()) {
     71  0
                 if (!path.mkdirs()) {
     72  0
                     throw new IOException("Unable to create CPE Data directory");
     73  
                 }
     74  
             }
     75  30
             return path;
     76  
         }
     77  
     
     78  
         /**
     79  
          * Creates an Analyzer for the CPE Index.
     80  
          *
     81  
          * @return the CPE Analyzer.
     82  
          */
     83  
         @SuppressWarnings("unchecked")
     84  
         @Override
     85  
         public Analyzer createIndexingAnalyzer() {
     86  27
             final Map fieldAnalyzers = new HashMap();
     87  27
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     88  27
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);
     89  
         }
     90  
         /**
     91  
          * The search field analyzer for the product field.
     92  
          */
     93  
         private SearchFieldAnalyzer productSearchFieldAnalyzer;
     94  
         /**
     95  
          * The search field analyzer for the vendor field.
     96  
          */
     97  
         private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
     98  
     
     99  
         /**
     100  
          * Creates an Analyzer for searching the CPE Index.
     101  
          *
     102  
          * @return the CPE Analyzer.
     103  
          */
     104  
         @SuppressWarnings("unchecked")
     105  
         @Override
     106  
         public Analyzer createSearchingAnalyzer() {
     107  27
             final Map fieldAnalyzers = new HashMap();
     108  
     
     109  27
             fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
     110  27
             productSearchFieldAnalyzer = new SearchFieldAnalyzer(Version.LUCENE_43);
     111  27
             vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(Version.LUCENE_43);
     112  27
             fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
     113  27
             fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
     114  
     
     115  27
             return new PerFieldAnalyzerWrapper(new FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);
     116  
         }
     117  
     
     118  
         /**
     119  
          * Creates the Lucene QueryParser used when querying the index.
     120  
          *
     121  
          * @return a QueryParser.
     122  
          */
     123  
         @Override
     124  
         public QueryParser createQueryParser() {
     125  21
             return new QueryParser(Version.LUCENE_43, Fields.DOCUMENT_KEY, getSearchingAnalyzer());
     126  
         }
     127  
     
     128  
         /**
     129  
          * Resets the searching analyzers
     130  
          */
     131  
         @Override
     132  
         protected void resetSearchingAnalyzer() {
     133  111
             if (productSearchFieldAnalyzer != null) {
     134  111
                 productSearchFieldAnalyzer.clear();
     135  
             }
     136  111
             if (vendorSearchFieldAnalyzer != null) {
     137  111
                 vendorSearchFieldAnalyzer.clear();
     138  
             }
     139  111
         }
     140  
     
     141  
         /**
     142  
          * Saves a CPE IndexEntry into the Lucene index.
     143  
          *
     144  
          * @param entry a CPE entry.
     145  
          * @throws CorruptIndexException is thrown if the index is corrupt.
     146  
          * @throws IOException is thrown if an IOException occurs.
     147  
          */
     148  
         public void saveEntry(IndexEntry entry) throws CorruptIndexException, IOException {
     149  0
             final Document doc = convertEntryToDoc(entry);
     150  0
             final Term term = new Term(Fields.DOCUMENT_KEY, entry.getDocumentId());
     151  0
             getIndexWriter().updateDocument(term, doc);
     152  0
         }
     153  
     
     154  
         /**
     155  
          * Converts a CPE entry into a Lucene Document.
     156  
          *
     157  
          * @param entry a CPE IndexEntry.
     158  
          * @return a Lucene Document containing a CPE IndexEntry.
     159  
          */
     160  
         protected Document convertEntryToDoc(IndexEntry entry) {
     161  0
             final Document doc = new Document();
     162  
     
     163  0
             final Field vendor = new TextField(Fields.VENDOR, entry.getVendor(), Field.Store.YES);
     164  0
             doc.add(vendor);
     165  
     
     166  0
             final Field product = new TextField(Fields.PRODUCT, entry.getProduct(), Field.Store.YES);
     167  0
             doc.add(product);
     168  0
             return doc;
     169  
         }
     170  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cpe.IndexEntry.html new file mode 100644 index 000000000..6119ab9ff --- /dev/null +++ b/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
    66%
    24/36
    37%
    12/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  8602
     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  1235
             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  8599
             this.vendor = vendor;
     82  8599
         }
     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  1658
             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  8599
             this.product = product;
     104  8599
         }
     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  2709
             this.searchScore = searchScore;
     126  2709
         }
     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  3
             if (cpeName != null && cpeName.length() > 7) {
     145  3
                 final String[] data = cpeName.substring(7).split(":");
     146  3
                 if (data.length >= 1) {
     147  3
                     vendor = URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8");
     148  3
                     if (data.length >= 2) {
     149  3
                         product = URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8");
     150  
                     }
     151  
                 }
     152  
             }
     153  3
         }
     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  7140
             if (obj == null) {
     165  0
                 return false;
     166  
             }
     167  7140
             if (getClass() != obj.getClass()) {
     168  0
                 return false;
     169  
             }
     170  7140
             final IndexEntry other = (IndexEntry) obj;
     171  7140
             if ((this.vendor == null) ? (other.vendor != null) : !this.vendor.equals(other.vendor)) {
     172  3828
                 return false;
     173  
             }
     174  3312
             if ((this.product == null) ? (other.product != null) : !this.product.equals(other.product)) {
     175  1077
                 return false;
     176  
             }
     177  2235
             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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweDB.html new file mode 100644 index 000000000..83c42240d --- /dev/null +++ b/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  3
         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  3
             ObjectInputStream oin = null;
     52  
             try {
     53  3
                 final String filePath = "data/cwe.hashmap.serialized";
     54  3
                 final InputStream input = CweDB.class.getClassLoader().getResourceAsStream(filePath);
     55  3
                 oin = new ObjectInputStream(input);
     56  3
                 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  3
                 if (oin != null) {
     65  
                     try {
     66  3
                         oin.close();
     67  0
                     } catch (IOException ex) {
     68  0
                         Logger.getLogger(CweDB.class.getName()).log(Level.FINEST, null, ex);
     69  6
                     }
     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  54
             if (cweId != null) {
     83  54
                 return CWE.get(cweId);
     84  
             }
     85  0
             return null;
     86  
         }
     87  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.cwe.CweHandler.html new file mode 100644 index 000000000..d45d913ae --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractIndex.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractIndex.html new file mode 100644 index 000000000..7d2829e65 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractIndex.html @@ -0,0 +1,621 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.AbstractIndex
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    AbstractIndex
    54%
    46/85
    57%
    15/26
    1.947
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.logging.Level;
     23  
     import java.util.logging.Logger;
     24  
     import org.apache.lucene.analysis.Analyzer;
     25  
     import org.apache.lucene.document.Document;
     26  
     import org.apache.lucene.index.CorruptIndexException;
     27  
     import org.apache.lucene.index.DirectoryReader;
     28  
     import org.apache.lucene.index.IndexReader;
     29  
     import org.apache.lucene.index.IndexWriter;
     30  
     import org.apache.lucene.index.IndexWriterConfig;
     31  
     import org.apache.lucene.queryparser.classic.ParseException;
     32  
     import org.apache.lucene.queryparser.classic.QueryParser;
     33  
     import org.apache.lucene.search.IndexSearcher;
     34  
     import org.apache.lucene.search.Query;
     35  
     import org.apache.lucene.search.TopDocs;
     36  
     import org.apache.lucene.store.Directory;
     37  
     import org.apache.lucene.store.LockObtainFailedException;
     38  
     import org.apache.lucene.util.Version;
     39  
     
     40  
     /**
     41  
      * The base Index for other index objects. Implements the open and close
     42  
      * methods.
     43  
      *
     44  
      * @author Jeremy Long (jeremy.long@owasp.org)
     45  
      */
     46  30
     public abstract class AbstractIndex {
     47  
     
     48  
         /**
     49  
          * The Lucene directory containing the index.
     50  
          */
     51  
         private Directory directory;
     52  
         /**
     53  
          * The IndexWriter for the Lucene index.
     54  
          */
     55  
         private IndexWriter indexWriter;
     56  
         /**
     57  
          * The Lucene IndexReader.
     58  
          */
     59  
         private IndexReader indexReader;
     60  
         /**
     61  
          * The Lucene IndexSearcher.
     62  
          */
     63  
         private IndexSearcher indexSearcher;
     64  
         /**
     65  
          * The Lucene Analyzer used for Indexing.
     66  
          */
     67  
         private Analyzer indexingAnalyzer;
     68  
         /**
     69  
          * The Lucene Analyzer used for Searching.
     70  
          */
     71  
         private Analyzer searchingAnalyzer;
     72  
         /**
     73  
          * The Lucene QueryParser used for Searching.
     74  
          */
     75  
         private QueryParser queryParser;
     76  
         /**
     77  
          * Indicates whether or not the Lucene Index is open.
     78  
          */
     79  30
         private boolean indexOpen = false;
     80  
     
     81  
         /**
     82  
          * Opens the CPE Index.
     83  
          *
     84  
          * @throws IOException is thrown if an IOException occurs opening the index.
     85  
          */
     86  
         public void open() throws IOException {
     87  27
             directory = this.getDirectory();
     88  27
             indexingAnalyzer = this.getIndexingAnalyzer();
     89  27
             searchingAnalyzer = this.getSearchingAnalyzer();
     90  27
             indexOpen = true;
     91  27
         }
     92  
     
     93  
         /**
     94  
          * Commits any pending changes.
     95  
          */
     96  
         public void commit() {
     97  0
             if (indexWriter != null) {
     98  
                 try {
     99  0
                     indexWriter.commit();
     100  0
                 } catch (CorruptIndexException ex) {
     101  0
                     final String msg = "Unable to update database, there is a corrupt index.";
     102  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
     103  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
     104  0
                 } catch (IOException ex) {
     105  0
                     final String msg = "Unable to update database due to an IO error.";
     106  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
     107  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
     108  0
                 }
     109  
             }
     110  0
         }
     111  
     
     112  
         /**
     113  
          * Closes the CPE Index.
     114  
          */
     115  
         public void close() {
     116  27
             if (indexWriter != null) {
     117  0
                 commit();
     118  
                 try {
     119  0
                     indexWriter.close(true);
     120  0
                 } catch (CorruptIndexException ex) {
     121  0
                     final String msg = "Unable to update database, there is a corrupt index.";
     122  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
     123  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
     124  0
                 } catch (IOException ex) {
     125  0
                     final String msg = "Unable to update database due to an IO error.";
     126  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
     127  0
                     Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
     128  
                 } finally {
     129  0
                     indexWriter = null;
     130  0
                 }
     131  
             }
     132  27
             if (indexSearcher != null) {
     133  21
                 indexSearcher = null;
     134  
             }
     135  
     
     136  27
             if (indexingAnalyzer != null) {
     137  27
                 indexingAnalyzer.close();
     138  27
                 indexingAnalyzer = null;
     139  
             }
     140  
     
     141  27
             if (searchingAnalyzer != null) {
     142  27
                 searchingAnalyzer.close();
     143  27
                 searchingAnalyzer = null;
     144  
             }
     145  
     
     146  
             try {
     147  27
                 directory.close();
     148  0
             } catch (IOException ex) {
     149  0
                 final String msg = "Unable to update database due to an IO error.";
     150  0
                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
     151  0
                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
     152  
             } finally {
     153  27
                 directory = null;
     154  27
             }
     155  27
             indexOpen = false;
     156  27
         }
     157  
     
     158  
         /**
     159  
          * Returns the status of the data source - is the index open.
     160  
          *
     161  
          * @return true or false.
     162  
          */
     163  
         public boolean isOpen() {
     164  37
             return indexOpen;
     165  
         }
     166  
     
     167  
         /**
     168  
          * Opens the Lucene Index Writer.
     169  
          *
     170  
          * @throws CorruptIndexException is thrown if the Lucene index is corrupt.
     171  
          * @throws IOException is thrown if an IOException occurs opening the index.
     172  
          */
     173  
         public void openIndexWriter() throws CorruptIndexException, IOException {
     174  0
             if (!isOpen()) {
     175  0
                 open();
     176  
             }
     177  0
             final IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_43, indexingAnalyzer);
     178  0
             indexWriter = new IndexWriter(directory, conf);
     179  0
         }
     180  
     
     181  
         /**
     182  
          * Retrieves the IndexWriter for the Lucene Index.
     183  
          *
     184  
          * @return an IndexWriter.
     185  
          * @throws CorruptIndexException is thrown if the Lucene Index is corrupt.
     186  
          * @throws LockObtainFailedException is thrown if there is an exception
     187  
          * obtaining a lock on the Lucene index.
     188  
          * @throws IOException is thrown if an IOException occurs opening the index.
     189  
          */
     190  
         public IndexWriter getIndexWriter() throws CorruptIndexException, LockObtainFailedException, IOException {
     191  0
             if (indexWriter == null) {
     192  0
                 openIndexWriter();
     193  
             }
     194  0
             return indexWriter;
     195  
         }
     196  
     
     197  
         /**
     198  
          * Opens the Lucene Index for reading.
     199  
          *
     200  
          * @throws CorruptIndexException is thrown if the index is corrupt.
     201  
          * @throws IOException is thrown if there is an exception reading the index.
     202  
          */
     203  
         public void openIndexReader() throws CorruptIndexException, IOException {
     204  21
             if (!isOpen()) {
     205  0
                 open();
     206  
             }
     207  
             //indexReader = IndexReader.open(directory, true);
     208  21
             indexReader = DirectoryReader.open(directory);
     209  21
         }
     210  
     
     211  
         /**
     212  
          * Returns an IndexSearcher for the Lucene Index.
     213  
          *
     214  
          * @return an IndexSearcher.
     215  
          * @throws CorruptIndexException is thrown if the index is corrupt.
     216  
          * @throws IOException is thrown if there is an exception reading the index.
     217  
          */
     218  
         protected IndexSearcher getIndexSearcher() throws CorruptIndexException, IOException {
     219  2820
             if (indexReader == null) {
     220  21
                 openIndexReader();
     221  
             }
     222  2820
             if (indexSearcher == null) {
     223  21
                 indexSearcher = new IndexSearcher(indexReader);
     224  
             }
     225  2820
             return indexSearcher;
     226  
         }
     227  
     
     228  
         /**
     229  
          * Returns an Analyzer to be used when indexing.
     230  
          *
     231  
          * @return an Analyzer.
     232  
          */
     233  
         public Analyzer getIndexingAnalyzer() {
     234  27
             if (indexingAnalyzer == null) {
     235  27
                 indexingAnalyzer = createIndexingAnalyzer();
     236  
             }
     237  27
             return indexingAnalyzer;
     238  
         }
     239  
     
     240  
         /**
     241  
          * Returns an analyzer used for searching the index
     242  
          *
     243  
          * @return a lucene analyzer
     244  
          */
     245  
         protected Analyzer getSearchingAnalyzer() {
     246  48
             if (searchingAnalyzer == null) {
     247  27
                 searchingAnalyzer = createSearchingAnalyzer();
     248  
             }
     249  48
             return searchingAnalyzer;
     250  
         }
     251  
     
     252  
         /**
     253  
          * Gets a query parser
     254  
          *
     255  
          * @return a query parser
     256  
          */
     257  
         protected QueryParser getQueryParser() {
     258  111
             if (queryParser == null) {
     259  21
                 queryParser = createQueryParser();
     260  
             }
     261  111
             return queryParser;
     262  
         }
     263  
     
     264  
         /**
     265  
          * Searches the index using the given search string.
     266  
          *
     267  
          * @param searchString the query text
     268  
          * @param maxQueryResults the maximum number of documents to return
     269  
          * @return the TopDocs found by the search
     270  
          * @throws ParseException thrown when the searchString is invalid
     271  
          * @throws IOException is thrown if there is an issue with the underlying
     272  
          * Index
     273  
          */
     274  
         public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
     275  111
             final QueryParser parser = getQueryParser();
     276  111
             final Query query = parser.parse(searchString);
     277  111
             resetSearchingAnalyzer();
     278  111
             final IndexSearcher is = getIndexSearcher();
     279  111
             return is.search(query, maxQueryResults);
     280  
         }
     281  
     
     282  
         /**
     283  
          * Searches the index using the given query.
     284  
          *
     285  
          * @param query the query used to search the index
     286  
          * @param maxQueryResults the max number of results to return
     287  
          * @return the TopDocs found be the query
     288  
          * @throws CorruptIndexException thrown if the Index is corrupt
     289  
          * @throws IOException thrown if there is an IOException
     290  
          */
     291  
         public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
     292  0
             final IndexSearcher is = getIndexSearcher();
     293  0
             return is.search(query, maxQueryResults);
     294  
         }
     295  
     
     296  
         /**
     297  
          * Retrieves a document from the Index.
     298  
          *
     299  
          * @param documentId the id of the document to retrieve
     300  
          * @return the Document
     301  
          * @throws IOException thrown if there is an IOException
     302  
          */
     303  
         public Document getDocument(int documentId) throws IOException {
     304  2709
             final IndexSearcher is = getIndexSearcher();
     305  2709
             return is.doc(documentId);
     306  
         }
     307  
     
     308  
         /**
     309  
          * Gets the directory that contains the Lucene Index.
     310  
          *
     311  
          * @return a Lucene Directory
     312  
          * @throws IOException is thrown when an IOException occurs
     313  
          */
     314  
         public abstract Directory getDirectory() throws IOException;
     315  
     
     316  
         /**
     317  
          * Creates the Lucene Analyzer used when indexing.
     318  
          *
     319  
          * @return a Lucene Analyzer
     320  
          */
     321  
         public abstract Analyzer createIndexingAnalyzer();
     322  
     
     323  
         /**
     324  
          * Creates the Lucene Analyzer used when querying the index.
     325  
          *
     326  
          * @return a Lucene Analyzer
     327  
          */
     328  
         public abstract Analyzer createSearchingAnalyzer();
     329  
     
     330  
         /**
     331  
          * Creates the Lucene QueryParser used when querying the index.
     332  
          *
     333  
          * @return a QueryParser
     334  
          */
     335  
         public abstract QueryParser createQueryParser();
     336  
     
     337  
         /**
     338  
          * Resets the searching analyzers
     339  
          */
     340  
         protected abstract void resetSearchingAnalyzer();
     341  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AbstractTokenizingFilter.html new file mode 100644 index 000000000..54b786da2 --- /dev/null +++ b/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  66
         private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
     38  
     
     39  
         /**
     40  
          * Gets the CharTermAttribute.
     41  
          *
     42  
          * @return the CharTermAttribute
     43  
          */
     44  
         protected CharTermAttribute getTermAtt() {
     45  91474
             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  91474
             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  66
             super(stream);
     68  66
             tokens = new LinkedList<String>();
     69  66
         }
     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  91215
             final boolean termAdded = tokens.size() > 0;
     78  91215
             if (termAdded) {
     79  55932
                 final String term = tokens.pop();
     80  55932
                 clearAttributes();
     81  55932
                 termAtt.append(term);
     82  
             }
     83  91215
             return termAdded;
     84  
         }
     85  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.AlphaNumericTokenizer.html new file mode 100644 index 000000000..4f3899ccb --- /dev/null +++ b/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  51
             super(matchVersion, in);
     41  51
         }
     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  22278
             return Character.isLetter(c) || Character.isDigit(c);
     63  
         }
     64  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.DependencySimilarity.html new file mode 100644 index 000000000..9058e658b --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.FieldAnalyzer.html new file mode 100644 index 000000000..d75ea0597 --- /dev/null +++ b/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  57
         public FieldAnalyzer(Version version) {
     51  57
             this.version = version;
     52  57
         }
     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  3
             final Tokenizer source = new AlphaNumericTokenizer(version, reader);
     64  
     
     65  3
             TokenStream stream = source;
     66  
     
     67  3
             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  3
             stream = new LowerCaseFilter(version, stream);
     77  3
             stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
     78  
     
     79  3
             return new TokenStreamComponents(source, stream);
     80  
         }
     81  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html new file mode 100644 index 000000000..2e1ae1d79 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.LuceneUtils.html @@ -0,0 +1,213 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.LuceneUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    LuceneUtils
    88%
    15/17
    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  
     /**
     22  
      * <p>Lucene utils is a set of utilize written to make constructing Lucene
     23  
      * queries simpler.</p>
     24  
      *
     25  
      * @author Jeremy Long (jeremy.long@owasp.org)
     26  
      */
     27  
     public final class LuceneUtils {
     28  
     
     29  
         /**
     30  
          * Private constructor as this is a utility class.
     31  
          */
     32  0
         private LuceneUtils() {
     33  0
         }
     34  
     
     35  
         /**
     36  
          * Appends the text to the supplied StringBuilder escaping Lucene control
     37  
          * characters in the process.
     38  
          *
     39  
          * @param buf a StringBuilder to append the escaped text to
     40  
          * @param text the data to be escaped
     41  
          */
     42  
         @SuppressWarnings("fallthrough")
     43  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(
     44  
                 value = "SF_SWITCH_NO_DEFAULT",
     45  
                 justification = "The switch below does have a default.")
     46  
         public static void appendEscapedLuceneQuery(StringBuilder buf,
     47  
                 final CharSequence text) {
     48  
     
     49  2487
             if (text == null || buf == null) {
     50  3
                 return;
     51  
             }
     52  
     
     53  25440
             for (int i = 0; i < text.length(); i++) {
     54  22956
                 final char c = text.charAt(i);
     55  22956
                 switch (c) {
     56  
                     case '+':
     57  
                     case '-':
     58  
                     case '&':
     59  
                     case '|':
     60  
                     case '!':
     61  
                     case '(':
     62  
                     case ')':
     63  
                     case '{':
     64  
                     case '}':
     65  
                     case '[':
     66  
                     case ']':
     67  
                     case '^':
     68  
                     case '"':
     69  
                     case '~':
     70  
                     case '*':
     71  
                     case '?':
     72  
                     case ':':
     73  
                     case '\\': //it is supposed to fall through here
     74  504
                         buf.append('\\');
     75  
                     default:
     76  22956
                         buf.append(c);
     77  
                         break;
     78  
                 }
     79  
             }
     80  2484
         }
     81  
     
     82  
         /**
     83  
          * Escapes the text passed in so that it is treated as data instead of
     84  
          * control characters.
     85  
          *
     86  
          * @param text data to be escaped
     87  
          * @return the escaped text.
     88  
          */
     89  
         public static String escapeLuceneQuery(final CharSequence text) {
     90  
     
     91  2448
             if (text == null) {
     92  3
                 return null;
     93  
             }
     94  
     
     95  2445
             int size = text.length();
     96  2445
             size = size >> 1;
     97  2445
             final StringBuilder buf = new StringBuilder(size);
     98  
     
     99  2445
             appendEscapedLuceneQuery(buf, text);
     100  
     
     101  2445
             return buf.toString();
     102  
         }
     103  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer.html new file mode 100644 index 000000000..688556bf4 --- /dev/null +++ b/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  60
         public SearchFieldAnalyzer(Version version) {
     54  60
             this.version = version;
     55  60
         }
     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  48
             final Tokenizer source = new AlphaNumericTokenizer(version, reader);
     67  
     
     68  48
             TokenStream stream = source;
     69  
     
     70  48
             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  48
             stream = new LowerCaseFilter(version, stream);
     79  48
             stream = new UrlTokenizingFilter(stream);
     80  48
             concatenatingFilter = new TokenPairConcatenatingFilter(stream);
     81  48
             stream = concatenatingFilter;
     82  48
             stream = new StopFilter(version, stream, StopAnalyzer.ENGLISH_STOP_WORDS_SET);
     83  
     
     84  48
             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  228
             if (concatenatingFilter != null) {
     95  228
                 concatenatingFilter.clear();
     96  
             }
     97  228
         }
     98  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.SearchVersionAnalyzer.html new file mode 100644 index 000000000..6cb3eb3a1 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..76193fc47 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter.html @@ -0,0 +1,214 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.lucene.TokenPairConcatenatingFilter
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    TokenPairConcatenatingFilter
    100%
    24/24
    100%
    8/8
    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.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  48
         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  
          * Constructs a new TokenPairConcatenatingFilter.
     52  
          *
     53  
          * @param stream the TokenStream that this filter will process
     54  
          */
     55  
         public TokenPairConcatenatingFilter(TokenStream stream) {
     56  48
             super(stream);
     57  48
             words = new LinkedList<String>();
     58  48
         }
     59  
     
     60  
         /**
     61  
          * Increments the underlying TokenStream and sets CharTermAttributes to
     62  
          * construct an expanded set of tokens by concatenating tokens with the
     63  
          * previous token.
     64  
          *
     65  
          * @return whether or not we have hit the end of the TokenStream
     66  
          * @throws IOException is thrown when an IOException occurs
     67  
          */
     68  
         @Override
     69  
         public boolean incrementToken() throws IOException {
     70  
     
     71  
             //collect all the terms into the words collection
     72  15744
             while (input.incrementToken()) {
     73  4470
                 final String word = new String(termAtt.buffer(), 0, termAtt.length());
     74  4470
                 words.add(word);
     75  4470
             }
     76  
     
     77  
             //if we have a previousTerm - write it out as its own token concatenated
     78  
             // with the current word (if one is available).
     79  11274
             if (previousWord != null && words.size() > 0) {
     80  4236
                 final String word = words.getFirst();
     81  4236
                 clearAttributes();
     82  4236
                 termAtt.append(previousWord).append(word);
     83  4236
                 previousWord = null;
     84  4236
                 return true;
     85  
             }
     86  
             //if we have words, write it out as a single token
     87  7038
             if (words.size() > 0) {
     88  4470
                 final String word = words.removeFirst();
     89  4470
                 clearAttributes();
     90  4470
                 termAtt.append(word);
     91  4470
                 previousWord = word;
     92  4470
                 return true;
     93  
             }
     94  2568
             return false;
     95  
         }
     96  
     
     97  
         /**
     98  
          * <p>Resets the Filter and clears any internal state data that may have
     99  
          * been left-over from previous uses of the Filter.</p>
     100  
          * <p><b>If this Filter is re-used this method must be called between
     101  
          * uses.</b></p>
     102  
          */
     103  
         public void clear() {
     104  228
             previousWord = null;
     105  228
             words.clear();
     106  228
         }
     107  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.UrlTokenizingFilter.html new file mode 100644 index 000000000..35983c715 --- /dev/null +++ b/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  66
             super(stream);
     48  66
         }
     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  91474
             final LinkedList<String> tokens = getTokens();
     61  91474
             final CharTermAttribute termAtt = getTermAtt();
     62  91474
             if (tokens.size() == 0 && input.incrementToken()) {
     63  55929
                 final String text = new String(termAtt.buffer(), 0, termAtt.length());
     64  55929
                 if (UrlStringUtils.containsUrl(text)) {
     65  6
                     final String[] parts = text.split("\\s");
     66  12
                     for (String part : parts) {
     67  6
                         if (UrlStringUtils.isUrl(part)) {
     68  
                             try {
     69  6
                                 final List<String> data = UrlStringUtils.extractImportantUrlData(part);
     70  6
                                 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  6
                             }
     75  
                         } else {
     76  0
                             tokens.add(part);
     77  
                         }
     78  
                     }
     79  6
                 } else {
     80  55923
                     tokens.add(text);
     81  
                 }
     82  
             }
     83  91215
             return addTerm();
     84  
         }
     85  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionAnalyzer.html new file mode 100644 index 000000000..d2a36cbc9 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.lucene.VersionTokenizingFilter.html new file mode 100644 index 000000000..4a6596348 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CorruptDatabaseException.html new file mode 100644 index 000000000..558ca9e2e --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html new file mode 100644 index 000000000..71b144a9e --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.CveDB.html @@ -0,0 +1,1167 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.CveDB
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    CveDB
    46%
    147/319
    51%
    48/94
    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.nvdcve;
     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.io.UnsupportedEncodingException;
     27  
     import java.sql.Connection;
     28  
     import java.sql.DriverManager;
     29  
     import java.sql.PreparedStatement;
     30  
     import java.sql.ResultSet;
     31  
     import java.sql.SQLException;
     32  
     import java.sql.Statement;
     33  
     import java.util.ArrayList;
     34  
     import java.util.HashSet;
     35  
     import java.util.List;
     36  
     import java.util.Set;
     37  
     import java.util.logging.Level;
     38  
     import java.util.logging.Logger;
     39  
     import org.owasp.dependencycheck.data.cwe.CweDB;
     40  
     import org.owasp.dependencycheck.dependency.Reference;
     41  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     42  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     43  
     import org.owasp.dependencycheck.utils.DependencyVersion;
     44  
     import org.owasp.dependencycheck.utils.DependencyVersionUtil;
     45  
     import org.owasp.dependencycheck.utils.Settings;
     46  
     
     47  
     /**
     48  
      * The database holding information about the NVD CVE data.
     49  
      *
     50  
      * @author Jeremy Long (jeremy.long@owasp.org)
     51  
      */
     52  33
     public class CveDB {
     53  
     
     54  
         /**
     55  
          * Resource location for SQL file used to create the database schema.
     56  
          */
     57  
         public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
     58  
         /**
     59  
          * The version of the current DB Schema.
     60  
          */
     61  
         public static final String DB_SCHEMA_VERSION = "2.5";
     62  
         /**
     63  
          * Database connection
     64  
          */
     65  
         private Connection conn;
     66  
         //<editor-fold defaultstate="collapsed" desc="Constants to create, maintain, and retrieve data from the CVE Database">
     67  
         /**
     68  
          * SQL Statement to delete references by vulnerability ID.
     69  
          */
     70  
         public static final String DELETE_REFERENCE = "DELETE FROM reference WHERE cveid = ?";
     71  
         /**
     72  
          * SQL Statement to delete software by vulnerability ID.
     73  
          */
     74  
         public static final String DELETE_SOFTWARE = "DELETE FROM software WHERE cveid = ?";
     75  
         /**
     76  
          * SQL Statement to delete a vulnerability by CVE.
     77  
          */
     78  
         public static final String DELETE_VULNERABILITY = "DELETE FROM vulnerability WHERE cve = ?";
     79  
         /**
     80  
          * SQL Statement to cleanup orphan entries. Yes, the db schema could be a
     81  
          * little tighter, but what we have works well to keep the data file size
     82  
          * down a bit.
     83  
          */
     84  
         public static final String CLEANUP_ORPHANS = "DELETE FROM CpeEntry WHERE id not in (SELECT CPEEntryId FROM Software); ";
     85  
         /**
     86  
          * SQL Statement to insert a new reference.
     87  
          */
     88  
         public static final String INSERT_REFERENCE = "INSERT INTO reference (cveid, name, url, source) VALUES (?, ?, ?, ?)";
     89  
         /**
     90  
          * SQL Statement to insert a new software.
     91  
          */
     92  
         public static final String INSERT_SOFTWARE = "INSERT INTO software (cveid, cpeEntryId, previousVersion) VALUES (?, ?, ?)";
     93  
         /**
     94  
          * SQL Statement to insert a new cpe.
     95  
          */
     96  
         public static final String INSERT_CPE = "INSERT INTO cpeEntry (cpe, vendor, product) VALUES (?, ?, ?)";
     97  
         /**
     98  
          * SQL Statement to get a CPEProductID.
     99  
          */
     100  
         public static final String SELECT_CPE_ID = "SELECT id FROM cpeEntry WHERE cpe = ?";
     101  
         /**
     102  
          * SQL Statement to insert a new vulnerability.
     103  
          */
     104  
         public static final String INSERT_VULNERABILITY = "INSERT INTO vulnerability (cve, description, cwe, cvssScore, cvssAccessVector, "
     105  
                 + "cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact) "
     106  
                 + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
     107  
         /**
     108  
          * SQL Statement to update a vulnerability.
     109  
          */
     110  
         public static final String UPDATE_VULNERABILITY = "UPDATE vulnerability SET description=?, cwe=?, cvssScore=?, cvssAccessVector=?, "
     111  
                 + "cvssAccessComplexity=?, cvssAuthentication=?, cvssConfidentialityImpact=?, cvssIntegrityImpact=?, cvssAvailabilityImpact=? "
     112  
                 + "WHERE id=?";
     113  
         /**
     114  
          * SQL Statement to find CVE entries based on CPE data.
     115  
          */
     116  
         public static final String SELECT_CVE_FROM_SOFTWARE = "SELECT cve, cpe, previousVersion "
     117  
                 + "FROM software INNER JOIN vulnerability ON vulnerability.id = software.cveId "
     118  
                 + "INNER JOIN cpeEntry ON cpeEntry.id = software.cpeEntryId "
     119  
                 + "WHERE vendor = ? AND product = ?";
     120  
         //unfortunately, the version info is too complicated to do in a select. Need to filter this afterwards
     121  
         //        + " AND (version = '-' OR previousVersion IS NOT NULL OR version=?)";
     122  
         //
     123  
         /**
     124  
          * SQL Statement to find the CPE entry based on the vendor and product.
     125  
          */
     126  
         public static final String SELECT_CPE_ENTRIES = "SELECT cpe FROM cpeEntry WHERE vendor = ? AND product = ?";
     127  
         /**
     128  
          * SQL Statement to select references by CVEID.
     129  
          */
     130  
         public static final String SELECT_REFERENCE = "SELECT source, name, url FROM reference WHERE cveid = ?";
     131  
         /**
     132  
          * SQL Statement to select software by CVEID.
     133  
          */
     134  
         public static final String SELECT_SOFTWARE = "SELECT cpe, previousVersion "
     135  
                 + "FROM software INNER JOIN cpeEntry ON software.cpeEntryId = cpeEntry.id WHERE cveid = ?";
     136  
     //    public static final String SELECT_SOFTWARE = "SELECT part, vendor, product, version, revision, previousVersion "
     137  
     //            + "FROM software INNER JOIN cpeProduct ON cpeProduct.id = software.cpeProductId LEFT JOIN cpeVersion ON "
     138  
     //            + "software.cpeVersionId = cpeVersion.id LEFT JOIN Version ON cpeVersion.versionId = version.id WHERE cveid = ?";
     139  
         /**
     140  
          * SQL Statement to select a vulnerability by CVEID.
     141  
          */
     142  
         public static final String SELECT_VULNERABILITY = "SELECT id, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, "
     143  
                 + "cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact FROM vulnerability WHERE cve = ?";
     144  
         /**
     145  
          * SQL Statement to select a vulnerability's primary key.
     146  
          */
     147  
         public static final String SELECT_VULNERABILITY_ID = "SELECT id FROM vulnerability WHERE cve = ?";
     148  
         //</editor-fold>
     149  
     
     150  
         /**
     151  
          * Opens the database connection. If the database does not exist, it will
     152  
          * create a new one.
     153  
          *
     154  
          * @throws IOException thrown if there is an IO Exception
     155  
          * @throws SQLException thrown if there is a SQL Exception
     156  
          * @throws DatabaseException thrown if there is an error initializing a new
     157  
          * database
     158  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     159  
          * loaded
     160  
          */
     161  
         @edu.umd.cs.findbugs.annotations.SuppressWarnings(
     162  
                 value = "DMI_EMPTY_DB_PASSWORD",
     163  
                 justification = "Yes, I know... Blank password.")
     164  
         public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
     165  
             /*
     166  
              * TODO - make it so we can exteralize the database (lucene index is a problem), could I store it as a blob
     167  
              *        and just download it when needed?
     168  
              */
     169  
     //        String dbDriver = Settings.getString(Settings.KEYS.DB_DRIVER);
     170  
     //        String dbConnStr = Settings.getString(Settings.KEYS.DB_CONNECTION_STRING);
     171  
     //        if (dbDriver != null && dbConnStr != null) {
     172  
     //            Class.forName(dbDriver);
     173  
     //            conn = DriverManager.getConnection(dbConnStr);
     174  
     //        } else { //use the embeded version
     175  33
             final String fileName = CveDB.getDataDirectory().getCanonicalPath();
     176  33
             final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
     177  33
             final File check = new File(f.getAbsolutePath() + ".h2.db");
     178  33
             final boolean createTables = !check.exists();
     179  33
             final String connStr = "jdbc:h2:file:" + f.getAbsolutePath();
     180  33
             Class.forName("org.h2.Driver");
     181  33
             conn = DriverManager.getConnection(connStr, "sa", "");
     182  33
             if (createTables) {
     183  0
                 createTables();
     184  
             }
     185  
     //        }
     186  33
         }
     187  
     
     188  
         /**
     189  
          * Commits all completed transactions.
     190  
          *
     191  
          * @throws SQLException thrown if a SQL Exception occurs
     192  
          */
     193  
         public void commit() throws SQLException {
     194  3
             if (conn != null) {
     195  3
                 conn.commit();
     196  
             }
     197  3
         }
     198  
     
     199  
         /**
     200  
          * Cleans up the object and ensures that "close" has been called.
     201  
          *
     202  
          * @throws Throwable thrown if there is a problem
     203  
          */
     204  
         @Override
     205  
         protected void finalize() throws Throwable {
     206  15
             close();
     207  15
             super.finalize(); //not necessary if extending Object.
     208  15
         }
     209  
     
     210  
         /**
     211  
          * Closes the DB4O database. Close should be called on this object when it
     212  
          * is done being used.
     213  
          */
     214  
         public void close() {
     215  48
             if (conn != null) {
     216  
                 try {
     217  33
                     conn.close();
     218  0
                 } catch (SQLException ex) {
     219  0
                     final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
     220  0
                     Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, msg, ex);
     221  0
                     Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
     222  33
                 }
     223  33
                 conn = null;
     224  
             }
     225  48
         }
     226  
     
     227  
         /**
     228  
          * Searches the CPE entries in the database and retrieves all entries for a
     229  
          * given vendor and product combination. The returned list will include all
     230  
          * versions of the product that are registered in the NVD CVE data.
     231  
          *
     232  
          * @param vendor the identified vendor name of the dependency being analyzed
     233  
          * @param product the identified name of the product of the dependency being
     234  
          * analyzed
     235  
          * @return a set of vulnerable software
     236  
          */
     237  
         public Set<VulnerableSoftware> getCPEs(String vendor, String product) {
     238  42
             final Set<VulnerableSoftware> cpe = new HashSet<VulnerableSoftware>();
     239  42
             ResultSet rs = null;
     240  42
             PreparedStatement ps = null;
     241  
             try {
     242  42
                 ps = conn.prepareStatement(SELECT_CPE_ENTRIES);
     243  42
                 ps.setString(1, vendor);
     244  42
                 ps.setString(2, product);
     245  42
                 rs = ps.executeQuery();
     246  
     
     247  1088
                 while (rs.next()) {
     248  1046
                     final VulnerableSoftware vs = new VulnerableSoftware();
     249  1046
                     vs.setCpe(rs.getString(1));
     250  1046
                     cpe.add(vs);
     251  1046
                 }
     252  0
             } catch (SQLException ex) {
     253  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
     254  
             } finally {
     255  42
                 closeResultSet(rs);
     256  42
                 closeStatement(ps);
     257  42
             }
     258  42
             return cpe;
     259  
         }
     260  
     
     261  
         /**
     262  
          * Retrieves the vulnerabilities associated with the specified CPE.
     263  
          *
     264  
          * @param cpeStr the CPE name
     265  
          * @return a list of Vulnerabilities
     266  
          * @throws DatabaseException thrown if there is an exception retrieving data
     267  
          */
     268  
         public List<Vulnerability> getVulnerabilities(String cpeStr) throws DatabaseException {
     269  3
             ResultSet rs = null;
     270  3
             final VulnerableSoftware cpe = new VulnerableSoftware();
     271  
             try {
     272  3
                 cpe.parseName(cpeStr);
     273  0
             } catch (UnsupportedEncodingException ex) {
     274  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
     275  3
             }
     276  3
             final DependencyVersion detectedVersion = parseDependencyVersion(cpe);
     277  3
             final List<Vulnerability> vulnerabilities = new ArrayList<Vulnerability>();
     278  
     
     279  
             PreparedStatement ps;
     280  3
             final HashSet<String> cveEntries = new HashSet<String>();
     281  
             try {
     282  3
                 ps = conn.prepareStatement(SELECT_CVE_FROM_SOFTWARE);
     283  3
                 ps.setString(1, cpe.getVendor());
     284  3
                 ps.setString(2, cpe.getProduct());
     285  3
                 rs = ps.executeQuery();
     286  1901
                 while (rs.next()) {
     287  1898
                     final String cveId = rs.getString(1);
     288  1898
                     final String cpeId = rs.getString(2);
     289  1898
                     final String previous = rs.getString(3);
     290  1898
                     if (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {
     291  54
                         cveEntries.add(cveId);
     292  
                     }
     293  1898
                 }
     294  3
                 closeResultSet(rs);
     295  3
                 closeStatement(ps);
     296  3
                 for (String cve : cveEntries) {
     297  54
                     final Vulnerability v = getVulnerability(cve);
     298  54
                     vulnerabilities.add(v);
     299  54
                 }
     300  
     
     301  0
             } catch (SQLException ex) {
     302  0
                 throw new DatabaseException("Exception retrieving vulnerability for " + cpeStr, ex);
     303  
             } finally {
     304  3
                 closeResultSet(rs);
     305  3
             }
     306  3
             return vulnerabilities;
     307  
         }
     308  
     
     309  
         /**
     310  
          * Gets a vulnerability for the provided CVE.
     311  
          *
     312  
          * @param cve the CVE to lookup
     313  
          * @return a vulnerability object
     314  
          * @throws DatabaseException if an exception occurs
     315  
          */
     316  
         private Vulnerability getVulnerability(String cve) throws DatabaseException {
     317  54
             PreparedStatement psV = null;
     318  54
             PreparedStatement psR = null;
     319  54
             PreparedStatement psS = null;
     320  54
             ResultSet rsV = null;
     321  54
             ResultSet rsR = null;
     322  54
             ResultSet rsS = null;
     323  54
             Vulnerability vuln = null;
     324  
             try {
     325  54
                 psV = conn.prepareStatement(SELECT_VULNERABILITY);
     326  54
                 psV.setString(1, cve);
     327  54
                 rsV = psV.executeQuery();
     328  54
                 if (rsV.next()) {
     329  54
                     vuln = new Vulnerability();
     330  54
                     vuln.setName(cve);
     331  54
                     vuln.setDescription(rsV.getString(2));
     332  54
                     String cwe = rsV.getString(3);
     333  54
                     if (cwe != null) {
     334  51
                         final String name = CweDB.getCweName(cwe);
     335  51
                         if (name != null) {
     336  48
                             cwe += " " + name;
     337  
                         }
     338  
                     }
     339  54
                     final int cveId = rsV.getInt(1);
     340  54
                     vuln.setCwe(cwe);
     341  54
                     vuln.setCvssScore(rsV.getFloat(4));
     342  54
                     vuln.setCvssAccessVector(rsV.getString(5));
     343  54
                     vuln.setCvssAccessComplexity(rsV.getString(6));
     344  54
                     vuln.setCvssAuthentication(rsV.getString(7));
     345  54
                     vuln.setCvssConfidentialityImpact(rsV.getString(8));
     346  54
                     vuln.setCvssIntegrityImpact(rsV.getString(9));
     347  54
                     vuln.setCvssAvailabilityImpact(rsV.getString(10));
     348  
     
     349  54
                     psR = conn.prepareStatement(SELECT_REFERENCE);
     350  54
                     psR.setInt(1, cveId);
     351  54
                     rsR = psR.executeQuery();
     352  312
                     while (rsR.next()) {
     353  258
                         vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));
     354  
                     }
     355  54
                     psS = conn.prepareStatement(SELECT_SOFTWARE);
     356  54
                     psS.setInt(1, cveId);
     357  54
                     rsS = psS.executeQuery();
     358  1881
                     while (rsS.next()) {
     359  1827
                         final String cpe = rsS.getString(1);
     360  1827
                         final String prevVersion = rsS.getString(2);
     361  1827
                         if (prevVersion == null) {
     362  1794
                             vuln.addVulnerableSoftware(cpe);
     363  
                         } else {
     364  33
                             vuln.addVulnerableSoftware(cpe, prevVersion);
     365  
                         }
     366  1827
                     }
     367  
                 }
     368  0
             } catch (SQLException ex) {
     369  0
                 throw new DatabaseException("Error retrieving " + cve, ex);
     370  
             } finally {
     371  54
                 closeResultSet(rsV);
     372  54
                 closeResultSet(rsR);
     373  54
                 closeResultSet(rsS);
     374  54
                 closeStatement(psV);
     375  54
                 closeStatement(psR);
     376  54
                 closeStatement(psS);
     377  54
             }
     378  54
             return vuln;
     379  
         }
     380  
     
     381  
         /**
     382  
          * Updates the vulnerability within the database. If the vulnerability does
     383  
          * not exist it will be added.
     384  
          *
     385  
          * @param vuln the vulnerability to add to the database
     386  
          * @throws DatabaseException is thrown if the database
     387  
          */
     388  
         public void updateVulnerability(Vulnerability vuln) throws DatabaseException {
     389  0
             PreparedStatement selectVulnerabilityId = null;
     390  0
             PreparedStatement deleteReferences = null;
     391  0
             PreparedStatement deleteSoftware = null;
     392  0
             PreparedStatement updateVulnerability = null;
     393  0
             PreparedStatement insertVulnerability = null;
     394  0
             PreparedStatement insertReference = null;
     395  0
             PreparedStatement selectCpeId = null;
     396  0
             PreparedStatement insertCpe = null;
     397  0
             PreparedStatement insertSoftware = null;
     398  
     
     399  
             try {
     400  0
                 selectVulnerabilityId = conn.prepareStatement(SELECT_VULNERABILITY_ID);
     401  0
                 deleteReferences = conn.prepareStatement(DELETE_REFERENCE);
     402  0
                 deleteSoftware = conn.prepareStatement(DELETE_SOFTWARE);
     403  0
                 updateVulnerability = conn.prepareStatement(UPDATE_VULNERABILITY);
     404  0
                 insertVulnerability = conn.prepareStatement(INSERT_VULNERABILITY, Statement.RETURN_GENERATED_KEYS);
     405  0
                 insertReference = conn.prepareStatement(INSERT_REFERENCE);
     406  0
                 selectCpeId = conn.prepareStatement(SELECT_CPE_ID);
     407  0
                 insertCpe = conn.prepareStatement(INSERT_CPE, Statement.RETURN_GENERATED_KEYS);
     408  0
                 insertSoftware = conn.prepareStatement(INSERT_SOFTWARE);
     409  0
                 int vulnerabilityId = 0;
     410  0
                 selectVulnerabilityId.setString(1, vuln.getName());
     411  0
                 ResultSet rs = selectVulnerabilityId.executeQuery();
     412  0
                 if (rs.next()) {
     413  0
                     vulnerabilityId = rs.getInt(1);
     414  
                     // first delete any existing vulnerability info. We don't know what was updated. yes, slower but atm easier.
     415  0
                     deleteReferences.setInt(1, vulnerabilityId);
     416  0
                     deleteReferences.execute();
     417  0
                     deleteSoftware.setInt(1, vulnerabilityId);
     418  0
                     deleteSoftware.execute();
     419  
                 }
     420  0
                 closeResultSet(rs);
     421  0
                 rs = null;
     422  0
                 if (vulnerabilityId != 0) {
     423  0
                     updateVulnerability.setString(1, vuln.getDescription());
     424  0
                     updateVulnerability.setString(2, vuln.getCwe());
     425  0
                     updateVulnerability.setFloat(3, vuln.getCvssScore());
     426  0
                     updateVulnerability.setString(4, vuln.getCvssAccessVector());
     427  0
                     updateVulnerability.setString(5, vuln.getCvssAccessComplexity());
     428  0
                     updateVulnerability.setString(6, vuln.getCvssAuthentication());
     429  0
                     updateVulnerability.setString(7, vuln.getCvssConfidentialityImpact());
     430  0
                     updateVulnerability.setString(8, vuln.getCvssIntegrityImpact());
     431  0
                     updateVulnerability.setString(9, vuln.getCvssAvailabilityImpact());
     432  0
                     updateVulnerability.setInt(10, vulnerabilityId);
     433  0
                     updateVulnerability.executeUpdate();
     434  
                 } else {
     435  0
                     insertVulnerability.setString(1, vuln.getName());
     436  0
                     insertVulnerability.setString(2, vuln.getDescription());
     437  0
                     insertVulnerability.setString(3, vuln.getCwe());
     438  0
                     insertVulnerability.setFloat(4, vuln.getCvssScore());
     439  0
                     insertVulnerability.setString(5, vuln.getCvssAccessVector());
     440  0
                     insertVulnerability.setString(6, vuln.getCvssAccessComplexity());
     441  0
                     insertVulnerability.setString(7, vuln.getCvssAuthentication());
     442  0
                     insertVulnerability.setString(8, vuln.getCvssConfidentialityImpact());
     443  0
                     insertVulnerability.setString(9, vuln.getCvssIntegrityImpact());
     444  0
                     insertVulnerability.setString(10, vuln.getCvssAvailabilityImpact());
     445  0
                     insertVulnerability.execute();
     446  
                     try {
     447  0
                         rs = insertVulnerability.getGeneratedKeys();
     448  0
                         rs.next();
     449  0
                         vulnerabilityId = rs.getInt(1);
     450  0
                     } catch (SQLException ex) {
     451  0
                         final String msg = String.format("Unable to retrieve id for new vulnerability for '%s'", vuln.getName());
     452  0
                         throw new DatabaseException(msg, ex);
     453  
                     } finally {
     454  0
                         closeResultSet(rs);
     455  0
                         rs = null;
     456  0
                     }
     457  
                 }
     458  0
                 insertReference.setInt(1, vulnerabilityId);
     459  0
                 for (Reference r : vuln.getReferences()) {
     460  0
                     insertReference.setString(2, r.getName());
     461  0
                     insertReference.setString(3, r.getUrl());
     462  0
                     insertReference.setString(4, r.getSource());
     463  0
                     insertReference.execute();
     464  
                 }
     465  0
                 for (VulnerableSoftware s : vuln.getVulnerableSoftware()) {
     466  0
                     int cpeProductId = 0;
     467  0
                     selectCpeId.setString(1, s.getName());
     468  
                     try {
     469  0
                         rs = selectCpeId.executeQuery();
     470  0
                         if (rs.next()) {
     471  0
                             cpeProductId = rs.getInt(1);
     472  
                         }
     473  0
                     } catch (SQLException ex) {
     474  0
                         throw new DatabaseException("Unable to get primary key for new cpe: " + s.getName(), ex);
     475  
                     } finally {
     476  0
                         closeResultSet(rs);
     477  0
                         rs = null;
     478  0
                     }
     479  
     
     480  0
                     if (cpeProductId == 0) {
     481  0
                         insertCpe.setString(1, s.getName());
     482  0
                         insertCpe.setString(2, s.getVendor());
     483  0
                         insertCpe.setString(3, s.getProduct());
     484  0
                         insertCpe.executeUpdate();
     485  0
                         cpeProductId = getGeneratedKey(insertCpe);
     486  
                     }
     487  0
                     if (cpeProductId == 0) {
     488  0
                         throw new DatabaseException("Unable to retrieve cpeProductId - no data returned");
     489  
                     }
     490  
     
     491  0
                     insertSoftware.setInt(1, vulnerabilityId);
     492  0
                     insertSoftware.setInt(2, cpeProductId);
     493  0
                     if (s.getPreviousVersion() == null) {
     494  0
                         insertSoftware.setNull(3, java.sql.Types.VARCHAR);
     495  
                     } else {
     496  0
                         insertSoftware.setString(3, s.getPreviousVersion());
     497  
                     }
     498  0
                     insertSoftware.execute();
     499  0
                 }
     500  
     
     501  0
             } catch (SQLException ex) {
     502  0
                 final String msg = String.format("Error updating '%s'", vuln.getName());
     503  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
     504  0
                 throw new DatabaseException(msg, ex);
     505  
             } finally {
     506  0
                 closeStatement(selectVulnerabilityId);
     507  0
                 closeStatement(deleteReferences);
     508  0
                 closeStatement(deleteSoftware);
     509  0
                 closeStatement(updateVulnerability);
     510  0
                 closeStatement(insertVulnerability);
     511  0
                 closeStatement(insertReference);
     512  0
                 closeStatement(selectCpeId);
     513  0
                 closeStatement(insertCpe);
     514  0
                 closeStatement(insertSoftware);
     515  0
             }
     516  0
         }
     517  
     
     518  
         /**
     519  
          * Retrieves the directory that the JAR file exists in so that we can ensure
     520  
          * we always use a common data directory.
     521  
          *
     522  
          * @return the data directory for this index.
     523  
          * @throws IOException is thrown if an IOException occurs of course...
     524  
          */
     525  
         public static File getDataDirectory() throws IOException {
     526  33
             final File path = Settings.getFile(Settings.KEYS.CVE_DATA_DIRECTORY);
     527  33
             if (!path.exists()) {
     528  0
                 if (!path.mkdirs()) {
     529  0
                     throw new IOException("Unable to create NVD CVE Data directory");
     530  
                 }
     531  
             }
     532  33
             return path;
     533  
         }
     534  
     
     535  
         /**
     536  
          * It is possible that orphaned rows may be generated during database
     537  
          * updates. This should be called after all updates have been completed to
     538  
          * ensure orphan entries are removed.
     539  
          */
     540  
         public void cleanupDatabase() {
     541  0
             PreparedStatement ps = null;
     542  
             try {
     543  0
                 ps = conn.prepareStatement(CLEANUP_ORPHANS);
     544  0
                 if (ps != null) {
     545  0
                     ps.executeUpdate();
     546  
                 }
     547  0
             } catch (SQLException ex) {
     548  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
     549  
             } finally {
     550  0
                 closeStatement(ps);
     551  0
             }
     552  0
         }
     553  
     
     554  
         /**
     555  
          * Creates the database structure (tables and indexes) to store the CVE data
     556  
          *
     557  
          * @throws SQLException thrown if there is a sql exception
     558  
          * @throws DatabaseException thrown if there is a database exception
     559  
          */
     560  
         protected void createTables() throws SQLException, DatabaseException {
     561  
             InputStream is;
     562  
             InputStreamReader reader;
     563  0
             BufferedReader in = null;
     564  
             try {
     565  0
                 is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
     566  0
                 reader = new InputStreamReader(is, "UTF-8");
     567  0
                 in = new BufferedReader(reader);
     568  0
                 final StringBuilder sb = new StringBuilder(2110);
     569  
                 String tmp;
     570  0
                 while ((tmp = in.readLine()) != null) {
     571  0
                     sb.append(tmp);
     572  
                 }
     573  0
                 Statement statement = null;
     574  
                 try {
     575  0
                     statement = conn.createStatement();
     576  0
                     statement.execute(sb.toString());
     577  
                 } finally {
     578  0
                     closeStatement(statement);
     579  0
                 }
     580  0
             } catch (IOException ex) {
     581  0
                 throw new DatabaseException("Unable to create database schema", ex);
     582  
             } finally {
     583  0
                 if (in != null) {
     584  
                     try {
     585  0
                         in.close();
     586  0
                     } catch (IOException ex) {
     587  0
                         Logger.getLogger(CveDB.class
     588  
                                 .getName()).log(Level.FINEST, null, ex);
     589  0
                     }
     590  
                 }
     591  
             }
     592  0
         }
     593  
     
     594  
         /**
     595  
          * Closes the given statement object ignoring any exceptions that occur.
     596  
          *
     597  
          * @param statement a Statement object
     598  
          */
     599  
         private void closeStatement(Statement statement) {
     600  207
             if (statement != null) {
     601  
                 try {
     602  207
                     statement.close();
     603  0
                 } catch (SQLException ex) {
     604  0
                     Logger.getLogger(CveDB.class
     605  
                             .getName()).log(Level.FINEST, statement.toString(), ex);
     606  207
                 }
     607  
             }
     608  207
         }
     609  
     
     610  
         /**
     611  
          * Closes the result set capturing and ignoring any SQLExceptions that
     612  
          * occur.
     613  
          *
     614  
          * @param rs a ResultSet to close
     615  
          */
     616  
         private void closeResultSet(ResultSet rs) {
     617  210
             if (rs != null) {
     618  
                 try {
     619  210
                     rs.close();
     620  0
                 } catch (SQLException ex) {
     621  0
                     Logger.getLogger(CveDB.class
     622  
                             .getName()).log(Level.FINEST, rs.toString(), ex);
     623  210
                 }
     624  
             }
     625  210
         }
     626  
     
     627  
         /**
     628  
          * Returns the generated integer primary key for a newly inserted row.
     629  
          *
     630  
          * @param statement a prepared statement that just executed an insert
     631  
          * @return a primary key
     632  
          * @throws DatabaseException thrown if there is an exception obtaining the
     633  
          * key
     634  
          */
     635  
         private int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
     636  0
             ResultSet rs = null;
     637  0
             int id = 0;
     638  
             try {
     639  0
                 rs = statement.getGeneratedKeys();
     640  0
                 rs.next();
     641  0
                 id = rs.getInt(1);
     642  0
             } catch (SQLException ex) {
     643  0
                 throw new DatabaseException("Unable to get primary key for inserted row");
     644  
             } finally {
     645  0
                 closeResultSet(rs);
     646  0
             }
     647  0
             return id;
     648  
         }
     649  
     
     650  
         /**
     651  
          * Determines if the given identifiedVersion is affected by the given cpeId
     652  
          * and previous version flag. A non-null, non-empty string passed to the
     653  
          * previous version argument indicates that all previous versions are
     654  
          * affected.
     655  
          *
     656  
          * @param vendor the vendor of the dependency being analyzed
     657  
          * @param product the product name of the dependency being analyzed
     658  
          * @param identifiedVersion the identified version of the dependency being
     659  
          * analyzed
     660  
          * @param cpeId the cpe identifier of software that has a known
     661  
          * vulnerability
     662  
          * @param previous a flag indicating if previous versions of the product are
     663  
          * vulnerable
     664  
          * @return true if the identified version is affected, otherwise false
     665  
          */
     666  
         private boolean isAffected(String vendor, String product, DependencyVersion identifiedVersion, String cpeId, String previous) {
     667  1145
             boolean affected = false;
     668  1145
             final boolean isStruts = "apache".equals(vendor) && "struts".equals(product);
     669  1145
             final DependencyVersion v = parseDependencyVersion(cpeId);
     670  1145
             final boolean prevAffected = previous == null ? false : !previous.isEmpty();
     671  1145
             if (identifiedVersion == null || "-".equals(identifiedVersion.toString())) {
     672  0
                 if (v == null || "-".equals(v.toString())) {
     673  0
                     affected = true;
     674  
                 }
     675  1145
             } else if (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {
     676  54
                 if (isStruts) { //struts 2 vulns don't affect struts 1
     677  54
                     if (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {
     678  54
                         affected = true;
     679  
                     }
     680  
                 } else {
     681  0
                     affected = true;
     682  
                 }
     683  
             }
     684  
             /*
     685  
              * TODO consider utilizing the matchThreeVersion method to get additional results. However, this
     686  
              *      might also introduce false positives.
     687  
              */
     688  1145
             return affected;
     689  
         }
     690  
     
     691  
         /**
     692  
          * Parses the version (including revision) from a CPE identifier. If no
     693  
          * version is identified then a '-' is returned.
     694  
          *
     695  
          * @param cpeStr a cpe identifier
     696  
          * @return a dependency version
     697  
          */
     698  
         private DependencyVersion parseDependencyVersion(String cpeStr) {
     699  1145
             final VulnerableSoftware cpe = new VulnerableSoftware();
     700  
             try {
     701  1145
                 cpe.parseName(cpeStr);
     702  0
             } catch (UnsupportedEncodingException ex) {
     703  
                 //never going to happen.
     704  0
                 Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
     705  1145
             }
     706  1145
             return parseDependencyVersion(cpe);
     707  
         }
     708  
     
     709  
         /**
     710  
          * Takes a CPE and parses out the version number. If no version is
     711  
          * identified then a '-' is returned.
     712  
          *
     713  
          * @param cpe a cpe object
     714  
          * @return a dependency version
     715  
          */
     716  
         private DependencyVersion parseDependencyVersion(VulnerableSoftware cpe) {
     717  
             DependencyVersion cpeVersion;
     718  1148
             if (cpe.getVersion() != null && cpe.getVersion().length() > 0) {
     719  
                 String versionText;
     720  1146
                 if (cpe.getRevision() != null && cpe.getRevision().length() > 0) {
     721  0
                     versionText = String.format("%s.%s", cpe.getVersion(), cpe.getRevision());
     722  
                 } else {
     723  1146
                     versionText = cpe.getVersion();
     724  
                 }
     725  1146
                 cpeVersion = DependencyVersionUtil.parseVersion(versionText);
     726  1146
             } else {
     727  2
                 cpeVersion = new DependencyVersion("-");
     728  
             }
     729  1148
             return cpeVersion;
     730  
         }
     731  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html new file mode 100644 index 000000000..eabf12d03 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.DatabaseException.html @@ -0,0 +1,122 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.DatabaseException
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DatabaseException
    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 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 msg the exception message
     46  
          * @param ex the cause of the exception
     47  
          */
     48  
         public DatabaseException(String msg, Exception ex) {
     49  0
             super(msg, ex);
     50  0
         }
     51  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer.html new file mode 100644 index 000000000..171413626 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer.html @@ -0,0 +1,443 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.NvdCveAnalyzer
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCveAnalyzer
    11%
    3/27
    0%
    0/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.data.nvdcve;
     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.analyzer.AnalysisException;
     27  
     import org.owasp.dependencycheck.analyzer.AnalysisPhase;
     28  
     import org.owasp.dependencycheck.dependency.Dependency;
     29  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     30  
     import org.owasp.dependencycheck.dependency.Identifier;
     31  
     import org.owasp.dependencycheck.analyzer.Analyzer;
     32  
     
     33  
     /**
     34  
      * NvdCveAnalyzer is a utility class that takes a project dependency and
     35  
      * attempts to discern if there is an associated CVEs. It uses the the
     36  
      * identifiers found by other analyzers to lookup the CVE data.
     37  
      *
     38  
      * @author Jeremy Long (jeremy.long@owasp.org)
     39  
      */
     40  3
     public class NvdCveAnalyzer implements Analyzer {
     41  
     
     42  
         /**
     43  
          * The maximum number of query results to return.
     44  
          */
     45  
         static final int MAX_QUERY_RESULTS = 100;
     46  
         /**
     47  
          * The CVE Index.
     48  
          */
     49  
         private CveDB cveDB;
     50  
     
     51  
         /**
     52  
          * Opens the data source.
     53  
          *
     54  
          * @throws SQLException thrown when there is a SQL Exception
     55  
          * @throws IOException thrown when there is an IO Exception
     56  
          * @throws DatabaseException thrown when there is a database exceptions
     57  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     58  
          * loaded
     59  
          */
     60  
         public void open() throws SQLException, IOException, DatabaseException, ClassNotFoundException {
     61  0
             cveDB = new CveDB();
     62  0
             cveDB.open();
     63  0
         }
     64  
     
     65  
         /**
     66  
          * Closes the data source.
     67  
          */
     68  
         public void close() {
     69  0
             cveDB.close();
     70  0
             cveDB = null;
     71  0
         }
     72  
     
     73  
         /**
     74  
          * Returns the status of the data source - is the database open.
     75  
          *
     76  
          * @return true or false.
     77  
          */
     78  
         public boolean isOpen() {
     79  0
             return (cveDB != null);
     80  
         }
     81  
     
     82  
         /**
     83  
          * Ensures that the CVE Database is closed.
     84  
          *
     85  
          * @throws Throwable when a throwable is thrown.
     86  
          */
     87  
         @Override
     88  
         protected void finalize() throws Throwable {
     89  0
             super.finalize();
     90  0
             if (isOpen()) {
     91  0
                 close();
     92  
             }
     93  0
         }
     94  
     
     95  
         /**
     96  
          * Analyzes a dependency and attempts to determine if there are any CPE
     97  
          * identifiers for this dependency.
     98  
          *
     99  
          * @param dependency The Dependency to analyze
     100  
          * @param engine The analysis engine
     101  
          * @throws AnalysisException is thrown if there is an issue analyzing the
     102  
          * dependency
     103  
          */
     104  
         public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
     105  0
             for (Identifier id : dependency.getIdentifiers()) {
     106  0
                 if ("cpe".equals(id.getType())) {
     107  
                     try {
     108  0
                         final String value = id.getValue();
     109  0
                         final List<Vulnerability> vulns = cveDB.getVulnerabilities(value);
     110  0
                         dependency.getVulnerabilities().addAll(vulns);
     111  
     //TODO - remove this comment block after additional testing is completed
     112  
     //note - valid match functionality has been moved into the CveDB class.
     113  
     ////                    for (Vulnerability v : vulns) {
     114  
     ////                        if (isValidMatch(dependency, v)) {
     115  
     ////                            dependency.addVulnerability(v);
     116  
     ////                        }
     117  
     ////                    }
     118  0
                     } catch (DatabaseException ex) {
     119  0
                         throw new AnalysisException(ex);
     120  0
                     }
     121  
                 }
     122  
             }
     123  0
         }
     124  
     
     125  
         /**
     126  
          * Returns true because this analyzer supports all dependency types.
     127  
          *
     128  
          * @return true.
     129  
          */
     130  
         public Set<String> getSupportedExtensions() {
     131  17289
             return null;
     132  
         }
     133  
     
     134  
         /**
     135  
          * Returns the name of this analyzer.
     136  
          *
     137  
          * @return the name of this analyzer.
     138  
          */
     139  
         public String getName() {
     140  0
             return "NVD CVE Analyzer";
     141  
         }
     142  
     
     143  
         /**
     144  
          * Returns true because this analyzer supports all dependency types.
     145  
          *
     146  
          * @param extension the file extension of the dependency being analyzed.
     147  
          * @return true.
     148  
          */
     149  
         public boolean supportsExtension(String extension) {
     150  0
             return true;
     151  
         }
     152  
     
     153  
         /**
     154  
          * Returns the analysis phase that this analyzer should run in.
     155  
          *
     156  
          * @return the analysis phase that this analyzer should run in.
     157  
          */
     158  
         public AnalysisPhase getAnalysisPhase() {
     159  3
             return AnalysisPhase.FINDING_ANALYSIS;
     160  
         }
     161  
     
     162  
         /**
     163  
          * Opens the NVD CVE Lucene Index.
     164  
          *
     165  
          * @throws Exception is thrown if there is an issue opening the index.
     166  
          */
     167  
         public void initialize() throws Exception {
     168  0
             this.open();
     169  0
         }
     170  
     //TODO - remove this comment block after additional testing is completed
     171  
     // The following check has been moved into the CveDB class.
     172  
     ////    /**
     173  
     ////     * <p>Determines if this is a valid vulnerability match for the given
     174  
     ////     * dependency. Specifically, this is concerned with ensuring the version
     175  
     ////     * numbers are correct.</p>
     176  
     ////     * <p>Currently, this is focused on the issues with the versions for Struts
     177  
     ////     * 1 and Struts 2. In the future this will due better matching on more
     178  
     ////     * version numbers.</p>
     179  
     ////     *
     180  
     ////     * @param dependency the dependency
     181  
     ////     * @param v the vulnerability
     182  
     ////     * @return returns true if the vulnerability is for the given dependency
     183  
     ////     */
     184  
     ////    private boolean isValidMatch(final Dependency dependency, final Vulnerability v) {
     185  
     ////        //right now I only know of the issue with Struts1/2
     186  
     ////        // start with fixing this problem.
     187  
     ////
     188  
     ////        //TODO extend this solution to do better version matching for the vulnerable software.
     189  
     ////        boolean struts1 = false;
     190  
     ////        boolean struts2 = false;
     191  
     ////        for (Identifier i : dependency.getIdentifiers()) {
     192  
     ////            if (i.getValue().startsWith("cpe:/a:apache:struts:")) {
     193  
     ////                final char version = i.getValue().charAt(21);
     194  
     ////                if (version == '1') {
     195  
     ////                    struts1 = true;
     196  
     ////                }
     197  
     ////                if (version == '2') {
     198  
     ////                    struts2 = true;
     199  
     ////                }
     200  
     ////            }
     201  
     ////        }
     202  
     ////        if (!struts1 && !struts2) {
     203  
     ////            return true; //we are not looking at struts, so return true.
     204  
     ////        }
     205  
     ////        if (struts1 && struts2) {
     206  
     ////            return true; //there is a mismatch here, but we can't solve it here so we return valid.
     207  
     ////        }
     208  
     ////        if (struts1) {
     209  
     ////            boolean hasStruts1Vuln = false;
     210  
     ////            boolean hasStruts2PreviousVersion = false;
     211  
     ////            for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
     212  
     ////                //TODO FIX THIS
     213  
     ////                //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2';
     214  
     ////                //hasStruts1Vuln |= vs.getName().charAt(21) == '1';
     215  
     ////            }
     216  
     ////            if (!hasStruts1Vuln && hasStruts2PreviousVersion) {
     217  
     ////                return false;
     218  
     ////            }
     219  
     ////        }
     220  
     ////
     221  
     ////        return true;
     222  
     ////    }
     223  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.html new file mode 100644 index 000000000..754f99f5c --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater.html @@ -0,0 +1,1089 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DatabaseUpdater
    0%
    0/262
    0%
    0/76
    5.789
    DatabaseUpdater$NvdCveUrl
    0%
    0/17
    N/A
    5.789
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.xml;
     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 javax.xml.parsers.ParserConfigurationException;
     30  
     import org.owasp.dependencycheck.data.CachedWebDataSource;
     31  
     import java.net.MalformedURLException;
     32  
     import java.net.URL;
     33  
     import java.sql.SQLException;
     34  
     import java.util.Calendar;
     35  
     import java.util.Date;
     36  
     import java.util.HashMap;
     37  
     import java.util.List;
     38  
     import java.util.Map;
     39  
     import java.util.Properties;
     40  
     import java.util.logging.Level;
     41  
     import java.util.logging.Logger;
     42  
     import javax.xml.parsers.SAXParser;
     43  
     import javax.xml.parsers.SAXParserFactory;
     44  
     import org.owasp.dependencycheck.data.UpdateException;
     45  
     import org.owasp.dependencycheck.data.cpe.Index;
     46  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     47  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     48  
     import org.owasp.dependencycheck.utils.DownloadFailedException;
     49  
     import org.owasp.dependencycheck.utils.Downloader;
     50  
     import org.owasp.dependencycheck.utils.FileUtils;
     51  
     import org.owasp.dependencycheck.utils.InvalidSettingException;
     52  
     import org.owasp.dependencycheck.utils.Settings;
     53  
     import org.xml.sax.SAXException;
     54  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     55  
     
     56  
     /**
     57  
      *
     58  
      * @author Jeremy Long (jeremy.long@owasp.org)
     59  
      */
     60  0
     public class DatabaseUpdater implements CachedWebDataSource {
     61  
     
     62  
         /**
     63  
          * The name of the properties file containing the timestamp of the last
     64  
          * update.
     65  
          */
     66  
         private static final String UPDATE_PROPERTIES_FILE = "lastupdated.prop";
     67  
         /**
     68  
          * The properties file key for the last updated field - used to store the
     69  
          * last updated time of the Modified NVD CVE xml file.
     70  
          */
     71  
         private static final String LAST_UPDATED_MODIFIED = "lastupdated.modified";
     72  
         /**
     73  
          * Stores the last updated time for each of the NVD CVE files. These
     74  
          * timestamps should be updated if we process the modified file within 7
     75  
          * days of the last update.
     76  
          */
     77  
         private static final String LAST_UPDATED_BASE = "lastupdated.";
     78  
         /**
     79  
          * Modified key word.
     80  
          */
     81  
         public static final String MODIFIED = "modified";
     82  
         /**
     83  
          * Reference to the Cve Database.
     84  
          */
     85  0
         private CveDB cveDB = null;
     86  
         /**
     87  
          * Reference to the Cpe Index.
     88  
          */
     89  0
         private Index cpeIndex = null;
     90  
     
     91  
         /**
     92  
          * <p>Downloads the latest NVD CVE XML file from the web and imports it into
     93  
          * the current CVE Database.</p>
     94  
          *
     95  
          * @throws UpdateException is thrown if there is an error updating the
     96  
          * database
     97  
          */
     98  
         public void update() throws UpdateException {
     99  
             try {
     100  0
                 final Map<String, NvdCveUrl> update = updateNeeded();
     101  0
                 int maxUpdates = 0;
     102  0
                 for (NvdCveUrl cve : update.values()) {
     103  0
                     if (cve.getNeedsUpdate()) {
     104  0
                         maxUpdates += 1;
     105  
                     }
     106  
                 }
     107  0
                 if (maxUpdates > 3) {
     108  0
                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
     109  
                             "NVD CVE requires several updates; this could take a couple of minutes.");
     110  
                 }
     111  0
                 if (maxUpdates > 0) {
     112  0
                     openDataStores();
     113  
                 }
     114  0
                 int count = 0;
     115  
     
     116  0
                 for (NvdCveUrl cve : update.values()) {
     117  0
                     if (cve.getNeedsUpdate()) {
     118  0
                         count += 1;
     119  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
     120  
                                 "Updating NVD CVE ({0} of {1})", new Object[]{count, maxUpdates});
     121  0
                         URL url = new URL(cve.getUrl());
     122  0
                         File outputPath = null;
     123  0
                         File outputPath12 = null;
     124  
                         try {
     125  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
     126  
                                     "Downloading {0}", cve.getUrl());
     127  
     
     128  0
                             outputPath = File.createTempFile("cve" + cve.getId() + "_", ".xml");
     129  0
                             Downloader.fetchFile(url, outputPath, false);
     130  
     
     131  0
                             url = new URL(cve.getOldSchemaVersionUrl());
     132  0
                             outputPath12 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
     133  0
                             Downloader.fetchFile(url, outputPath12, false);
     134  
     
     135  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
     136  
                                     "Processing {0}", cve.getUrl());
     137  
     
     138  0
                             importXML(outputPath, outputPath12);
     139  
     
     140  0
                             cveDB.commit();
     141  0
                             cpeIndex.commit();
     142  
     
     143  0
                             writeLastUpdatedPropertyFile(cve);
     144  
     
     145  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
     146  
                                     "Completed update {0} of {1}", new Object[]{count, maxUpdates});
     147  0
                         } catch (FileNotFoundException ex) {
     148  0
                             throw new UpdateException(ex);
     149  0
                         } catch (ParserConfigurationException ex) {
     150  0
                             throw new UpdateException(ex);
     151  0
                         } catch (SAXException ex) {
     152  0
                             throw new UpdateException(ex);
     153  0
                         } catch (IOException ex) {
     154  0
                             throw new UpdateException(ex);
     155  0
                         } catch (SQLException ex) {
     156  0
                             throw new UpdateException(ex);
     157  0
                         } catch (DatabaseException ex) {
     158  0
                             throw new UpdateException(ex);
     159  0
                         } catch (ClassNotFoundException ex) {
     160  0
                             throw new UpdateException(ex);
     161  
                         } finally {
     162  0
                             boolean deleted = false;
     163  
                             try {
     164  0
                                 if (outputPath != null && outputPath.exists()) {
     165  0
                                     deleted = outputPath.delete();
     166  
                                 }
     167  
                             } finally {
     168  0
                                 if (outputPath != null && (outputPath.exists() || !deleted)) {
     169  0
                                     outputPath.deleteOnExit();
     170  
                                 }
     171  
                             }
     172  
                             try {
     173  0
                                 deleted = false;
     174  0
                                 if (outputPath12 != null && outputPath12.exists()) {
     175  0
                                     deleted = outputPath12.delete();
     176  
                                 }
     177  
                             } finally {
     178  0
                                 if (outputPath12 != null && (outputPath12.exists() || !deleted)) {
     179  0
                                     outputPath12.deleteOnExit();
     180  
                                 }
     181  
                             }
     182  0
                         }
     183  0
                     }
     184  
                 }
     185  0
                 if (maxUpdates >= 1) {
     186  0
                     ensureModifiedIsInLastUpdatedProperties(update);
     187  0
                     cveDB.cleanupDatabase();
     188  
                 }
     189  0
             } catch (MalformedURLException ex) {
     190  0
                 throw new UpdateException(ex);
     191  0
             } catch (DownloadFailedException ex) {
     192  0
                 throw new UpdateException(ex);
     193  
             } finally {
     194  0
                 closeDataStores();
     195  0
             }
     196  0
         }
     197  
     
     198  
         /**
     199  
          * Imports the NVD CVE XML File into the Lucene Index.
     200  
          *
     201  
          * @param file the file containing the NVD CVE XML
     202  
          * @param oldVersion contains the file containing the NVD CVE XML 1.2
     203  
          * @throws ParserConfigurationException is thrown if there is a parser
     204  
          * configuration exception
     205  
          * @throws SAXException is thrown if there is a SAXException
     206  
          * @throws IOException is thrown if there is a ioexception
     207  
          * @throws SQLException is thrown if there is a sql exception
     208  
          * @throws DatabaseException is thrown if there is a database exception
     209  
          * @throws ClassNotFoundException thrown if the h2 database driver cannot be
     210  
          * loaded
     211  
          */
     212  
         private void importXML(File file, File oldVersion)
     213  
                 throws ParserConfigurationException, SAXException, IOException, SQLException, DatabaseException, ClassNotFoundException {
     214  
     
     215  0
             final SAXParserFactory factory = SAXParserFactory.newInstance();
     216  0
             final SAXParser saxParser = factory.newSAXParser();
     217  
     
     218  0
             final NvdCve12Handler cve12Handler = new NvdCve12Handler();
     219  0
             saxParser.parse(oldVersion, cve12Handler);
     220  0
             final Map<String, List<VulnerableSoftware>> prevVersionVulnMap = cve12Handler.getVulnerabilities();
     221  
     
     222  0
             final NvdCve20Handler cve20Handler = new NvdCve20Handler();
     223  0
             cve20Handler.setCveDB(cveDB);
     224  0
             cve20Handler.setPrevVersionVulnMap(prevVersionVulnMap);
     225  0
             cve20Handler.setCpeIndex(cpeIndex);
     226  0
             saxParser.parse(file, cve20Handler);
     227  0
         }
     228  
     
     229  
         /**
     230  
          * Closes the CVE and CPE data stores.
     231  
          */
     232  
         private void closeDataStores() {
     233  0
             if (cveDB != null) {
     234  
                 try {
     235  0
                     cveDB.close();
     236  0
                 } catch (Exception ignore) {
     237  0
                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, "Error closing the cveDB", ignore);
     238  0
                 }
     239  
             }
     240  0
             if (cpeIndex != null) {
     241  
                 try {
     242  0
                     cpeIndex.close();
     243  0
                 } catch (Exception ignore) {
     244  0
                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, "Error closing the cpeIndex", ignore);
     245  0
                 }
     246  
             }
     247  0
         }
     248  
     
     249  
         /**
     250  
          * Opens the CVE and CPE data stores.
     251  
          *
     252  
          * @throws UpdateException thrown if a data store cannot be opened
     253  
          */
     254  
         private void openDataStores() throws UpdateException {
     255  
             //open the cve and cpe data stores
     256  
             try {
     257  0
                 cveDB = new CveDB();
     258  0
                 cveDB.open();
     259  0
                 cpeIndex = new Index();
     260  0
                 cpeIndex.openIndexWriter();
     261  0
             } catch (IOException ex) {
     262  0
                 closeDataStores();
     263  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "IO Error opening databases", ex);
     264  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     265  0
             } catch (SQLException ex) {
     266  0
                 closeDataStores();
     267  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "SQL Exception opening databases", ex);
     268  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     269  0
             } catch (DatabaseException ex) {
     270  0
                 closeDataStores();
     271  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Database Exception opening databases", ex);
     272  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     273  0
             } catch (ClassNotFoundException ex) {
     274  0
                 closeDataStores();
     275  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Class not found exception opening databases", ex);
     276  0
                 throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
     277  0
             }
     278  0
         }
     279  
     
     280  
         //<editor-fold defaultstate="collapsed" desc="Code to read/write properties files regarding the last update dates">
     281  
         /**
     282  
          * Writes a properties file containing the last updated date to the
     283  
          * VULNERABLE_CPE directory.
     284  
          *
     285  
          * @param updatedValue the updated nvdcve entry
     286  
          * @throws UpdateException is thrown if there is an update exception
     287  
          */
     288  
         private void writeLastUpdatedPropertyFile(NvdCveUrl updatedValue) throws UpdateException {
     289  0
             if (updatedValue == null) {
     290  0
                 return;
     291  
             }
     292  
             String dir;
     293  
             try {
     294  0
                 dir = CveDB.getDataDirectory().getCanonicalPath();
     295  0
             } catch (IOException ex) {
     296  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Error updating the databases propterty file.", ex);
     297  0
                 throw new UpdateException("Unable to locate last updated properties file.", ex);
     298  0
             }
     299  0
             final File cveProp = new File(dir, UPDATE_PROPERTIES_FILE);
     300  0
             final Properties prop = new Properties();
     301  0
             if (cveProp.exists()) {
     302  0
                 FileInputStream in = null;
     303  
                 try {
     304  0
                     in = new FileInputStream(cveProp);
     305  0
                     prop.load(in);
     306  0
                 } catch (Exception ignoreMe) {
     307  0
                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ignoreMe);
     308  
                 } finally {
     309  0
                     if (in != null) {
     310  
                         try {
     311  0
                             in.close();
     312  0
                         } catch (Exception ignoreMeToo) {
     313  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ignoreMeToo);
     314  0
                         }
     315  
                     }
     316  
                 }
     317  
     
     318  
             }
     319  0
             prop.put("version", CveDB.DB_SCHEMA_VERSION);
     320  0
             prop.put(LAST_UPDATED_BASE + updatedValue.getId(), String.valueOf(updatedValue.getTimestamp()));
     321  
     
     322  0
             OutputStream os = null;
     323  0
             OutputStreamWriter out = null;
     324  
             try {
     325  0
                 os = new FileOutputStream(cveProp);
     326  0
                 out = new OutputStreamWriter(os, "UTF-8");
     327  0
                 prop.store(out, dir);
     328  0
             } catch (FileNotFoundException ex) {
     329  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     330  0
                 throw new UpdateException("Unable to find last updated properties file.", ex);
     331  0
             } catch (IOException ex) {
     332  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     333  0
                 throw new UpdateException("Unable to update last updated properties file.", ex);
     334  
             } finally {
     335  0
                 if (out != null) {
     336  
                     try {
     337  0
                         out.close();
     338  0
                     } catch (IOException ex) {
     339  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     340  0
                     }
     341  
                 }
     342  0
                 if (os != null) {
     343  
                     try {
     344  0
                         os.close();
     345  0
                     } catch (IOException ex) {
     346  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     347  0
                     }
     348  
                 }
     349  
             }
     350  0
         }
     351  
     
     352  
         /**
     353  
          * Determines if the index needs to be updated. This is done by fetching the
     354  
          * nvd cve meta data and checking the last update date. If the data needs to
     355  
          * be refreshed this method will return the NvdCveUrl for the files that
     356  
          * need to be updated.
     357  
          *
     358  
          * @return the NvdCveUrl of the files that need to be updated.
     359  
          * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
     360  
          * data is incorrect.
     361  
          * @throws DownloadFailedException is thrown if there is an error.
     362  
          * downloading the nvd cve download data file.
     363  
          * @throws UpdateException Is thrown if there is an issue with the last
     364  
          * updated properties file.
     365  
          */
     366  
         public Map<String, NvdCveUrl> updateNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
     367  
     
     368  
             Map<String, NvdCveUrl> currentlyPublished;
     369  
             try {
     370  0
                 currentlyPublished = retrieveCurrentTimestampsFromWeb();
     371  0
             } catch (InvalidDataException ex) {
     372  0
                 final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
     373  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, msg, ex);
     374  0
                 throw new DownloadFailedException(msg, ex);
     375  
     
     376  0
             } catch (InvalidSettingException ex) {
     377  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
     378  0
                 throw new DownloadFailedException("Invalid settings", ex);
     379  0
             }
     380  
     
     381  0
             if (currentlyPublished == null) {
     382  0
                 throw new DownloadFailedException("Unable to retrieve valid timestamp from nvd cve downloads page");
     383  
             }
     384  
             String dir;
     385  
             try {
     386  0
                 dir = CveDB.getDataDirectory().getCanonicalPath();
     387  0
             } catch (IOException ex) {
     388  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "CveDB data directory doesn't exist?", ex);
     389  0
                 throw new UpdateException("Unable to locate last updated properties file.", ex);
     390  0
             }
     391  
     
     392  0
             final File f = new File(dir);
     393  0
             if (f.exists()) {
     394  0
                 final File cveProp = new File(dir, UPDATE_PROPERTIES_FILE);
     395  0
                 if (cveProp.exists()) {
     396  0
                     final Properties prop = new Properties();
     397  0
                     InputStream is = null;
     398  
                     try {
     399  0
                         is = new FileInputStream(cveProp);
     400  0
                         prop.load(is);
     401  
     
     402  0
                         boolean deleteAndRecreate = false;
     403  
                         float version;
     404  
     
     405  0
                         if (prop.getProperty("version") == null) {
     406  0
                             deleteAndRecreate = true;
     407  
                         } else {
     408  
                             try {
     409  0
                                 version = Float.parseFloat(prop.getProperty("version"));
     410  0
                                 final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
     411  0
                                 if (currentVersion > version) {
     412  0
                                     deleteAndRecreate = true;
     413  
                                 }
     414  0
                             } catch (NumberFormatException ex) {
     415  0
                                 deleteAndRecreate = true;
     416  0
                             }
     417  
                         }
     418  0
                         if (deleteAndRecreate) {
     419  0
                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO, "The database version is old. Rebuilding the database.");
     420  0
                             is.close();
     421  
                             //this is an old version of the lucene index - just delete it
     422  0
                             FileUtils.delete(f);
     423  
     
     424  
                             //this importer also updates the CPE index and it is also using an old version
     425  0
                             final Index cpeId = new Index();
     426  0
                             final File cpeDir = cpeId.getDataDirectory();
     427  0
                             FileUtils.delete(cpeDir);
     428  0
                             return currentlyPublished;
     429  
                         }
     430  
     
     431  0
                         final long lastUpdated = Long.parseLong(prop.getProperty(LAST_UPDATED_MODIFIED, "0"));
     432  0
                         final Date now = new Date();
     433  0
                         final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
     434  0
                         final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR, 2002);
     435  0
                         final int end = Calendar.getInstance().get(Calendar.YEAR);
     436  0
                         if (lastUpdated == currentlyPublished.get(MODIFIED).timestamp) {
     437  0
                             currentlyPublished.clear(); //we don't need to update anything.
     438  0
                         } else if (withinRange(lastUpdated, now.getTime(), days)) {
     439  0
                             currentlyPublished.get(MODIFIED).setNeedsUpdate(true);
     440  0
                             for (int i = start; i <= end; i++) {
     441  0
                                 currentlyPublished.get(String.valueOf(i)).setNeedsUpdate(false);
     442  
                             }
     443  
                         } else { //we figure out which of the several XML files need to be downloaded.
     444  0
                             currentlyPublished.get(MODIFIED).setNeedsUpdate(false);
     445  0
                             for (int i = start; i <= end; i++) {
     446  0
                                 final NvdCveUrl cve = currentlyPublished.get(String.valueOf(i));
     447  0
                                 long currentTimestamp = 0;
     448  
                                 try {
     449  0
                                     currentTimestamp = Long.parseLong(prop.getProperty(LAST_UPDATED_BASE + String.valueOf(i), "0"));
     450  0
                                 } catch (NumberFormatException ex) {
     451  0
                                     final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
     452  
                                             LAST_UPDATED_BASE, String.valueOf(i));
     453  0
                                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, msg, ex);
     454  0
                                 }
     455  0
                                 if (currentTimestamp == cve.getTimestamp()) {
     456  0
                                     cve.setNeedsUpdate(false); //they default to true.
     457  
                                 }
     458  
                             }
     459  
                         }
     460  0
                     } catch (FileNotFoundException ex) {
     461  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     462  0
                     } catch (IOException ex) {
     463  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     464  0
                     } catch (NumberFormatException ex) {
     465  0
                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     466  
                     } finally {
     467  0
                         if (is != null) {
     468  
                             try {
     469  0
                                 is.close();
     470  0
                             } catch (IOException ex) {
     471  0
                                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
     472  0
                             }
     473  
                         }
     474  
                     }
     475  
                 }
     476  
             }
     477  0
             return currentlyPublished;
     478  
         }
     479  
     
     480  
         /**
     481  
          * Determines if the epoch date is within the range specified of the
     482  
          * compareTo epoch time. This takes the (compareTo-date)/1000/60/60/24 to
     483  
          * get the number of days. If the calculated days is less then the range the
     484  
          * date is considered valid.
     485  
          *
     486  
          * @param date the date to be checked.
     487  
          * @param compareTo the date to compare to.
     488  
          * @param range the range in days to be considered valid.
     489  
          * @return whether or not the date is within the range.
     490  
          */
     491  
         private boolean withinRange(long date, long compareTo, int range) {
     492  0
             final double differenceInDays = (compareTo - date) / 1000.0 / 60.0 / 60.0 / 24.0;
     493  0
             return differenceInDays < range;
     494  
         }
     495  
     
     496  
         /**
     497  
          * Retrieves the timestamps from the NVD CVE meta data file.
     498  
          *
     499  
          * @return the timestamp from the currently published nvdcve downloads page
     500  
          * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
     501  
          * is incorrect.
     502  
          * @throws DownloadFailedException thrown if there is an error downloading
     503  
          * the nvd cve meta data file
     504  
          * @throws InvalidDataException thrown if there is an exception parsing the
     505  
          * timestamps
     506  
          * @throws InvalidSettingException thrown if the settings are invalid
     507  
          */
     508  
         protected Map<String, NvdCveUrl> retrieveCurrentTimestampsFromWeb()
     509  
                 throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
     510  
     
     511  0
             final Map<String, NvdCveUrl> map = new HashMap<String, NvdCveUrl>();
     512  0
             String retrieveUrl = Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL);
     513  
     
     514  0
             NvdCveUrl item = new NvdCveUrl();
     515  0
             item.setNeedsUpdate(false); //the others default to true, to make life easier later this should default to false.
     516  0
             item.setId(MODIFIED);
     517  0
             item.setUrl(retrieveUrl);
     518  0
             item.setOldSchemaVersionUrl(Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL));
     519  
     
     520  0
             item.timestamp = Downloader.getLastModified(new URL(retrieveUrl));
     521  0
             map.put(MODIFIED, item);
     522  
     
     523  0
             final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR);
     524  0
             final int end = Calendar.getInstance().get(Calendar.YEAR);
     525  0
             final String baseUrl20 = Settings.getString(Settings.KEYS.CVE_SCHEMA_2_0);
     526  0
             final String baseUrl12 = Settings.getString(Settings.KEYS.CVE_SCHEMA_1_2);
     527  0
             for (int i = start; i <= end; i++) {
     528  0
                 retrieveUrl = String.format(baseUrl20, i);
     529  0
                 item = new NvdCveUrl();
     530  0
                 item.setId(Integer.toString(i));
     531  0
                 item.setUrl(retrieveUrl);
     532  0
                 item.setOldSchemaVersionUrl(String.format(baseUrl12, i));
     533  0
                 item.setTimestamp(Downloader.getLastModified(new URL(retrieveUrl)));
     534  0
                 map.put(item.id, item);
     535  
             }
     536  0
             return map;
     537  
         }
     538  
     
     539  
         /**
     540  
          * Method to double check that the "modified" nvdcve file is listed and has
     541  
          * a timestamp in the last updated properties file.
     542  
          *
     543  
          * @param update a set of updated NvdCveUrl objects
     544  
          */
     545  
         private void ensureModifiedIsInLastUpdatedProperties(Map<String, NvdCveUrl> update) {
     546  
             try {
     547  0
                 writeLastUpdatedPropertyFile(update.get(MODIFIED));
     548  0
             } catch (UpdateException ex) {
     549  0
                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
     550  0
             }
     551  0
         }
     552  
     
     553  
         /**
     554  
          * A pojo that contains the Url and timestamp of the current NvdCve XML
     555  
          * files.
     556  
          */
     557  0
         protected static class NvdCveUrl {
     558  
     
     559  
             /**
     560  
              * an id.
     561  
              */
     562  
             private String id;
     563  
     
     564  
             /**
     565  
              * Get the value of id.
     566  
              *
     567  
              * @return the value of id
     568  
              */
     569  
             public String getId() {
     570  0
                 return id;
     571  
             }
     572  
     
     573  
             /**
     574  
              * Set the value of id.
     575  
              *
     576  
              * @param id new value of id
     577  
              */
     578  
             public void setId(String id) {
     579  0
                 this.id = id;
     580  0
             }
     581  
             /**
     582  
              * a url.
     583  
              */
     584  
             private String url;
     585  
     
     586  
             /**
     587  
              * Get the value of url.
     588  
              *
     589  
              * @return the value of url
     590  
              */
     591  
             public String getUrl() {
     592  0
                 return url;
     593  
             }
     594  
     
     595  
             /**
     596  
              * Set the value of url.
     597  
              *
     598  
              * @param url new value of url
     599  
              */
     600  
             public void setUrl(String url) {
     601  0
                 this.url = url;
     602  0
             }
     603  
             /**
     604  
              * The 1.2 schema URL.
     605  
              */
     606  
             private String oldSchemaVersionUrl;
     607  
     
     608  
             /**
     609  
              * Get the value of oldSchemaVersionUrl.
     610  
              *
     611  
              * @return the value of oldSchemaVersionUrl
     612  
              */
     613  
             public String getOldSchemaVersionUrl() {
     614  0
                 return oldSchemaVersionUrl;
     615  
             }
     616  
     
     617  
             /**
     618  
              * Set the value of oldSchemaVersionUrl.
     619  
              *
     620  
              * @param oldSchemaVersionUrl new value of oldSchemaVersionUrl
     621  
              */
     622  
             public void setOldSchemaVersionUrl(String oldSchemaVersionUrl) {
     623  0
                 this.oldSchemaVersionUrl = oldSchemaVersionUrl;
     624  0
             }
     625  
             /**
     626  
              * a timestamp - epoch time.
     627  
              */
     628  
             private long timestamp;
     629  
     
     630  
             /**
     631  
              * Get the value of timestamp - epoch time.
     632  
              *
     633  
              * @return the value of timestamp - epoch time
     634  
              */
     635  
             public long getTimestamp() {
     636  0
                 return timestamp;
     637  
             }
     638  
     
     639  
             /**
     640  
              * Set the value of timestamp - epoch time.
     641  
              *
     642  
              * @param timestamp new value of timestamp - epoch time
     643  
              */
     644  
             public void setTimestamp(long timestamp) {
     645  0
                 this.timestamp = timestamp;
     646  0
             }
     647  
             /**
     648  
              * indicates whether or not this item should be updated.
     649  
              */
     650  0
             private boolean needsUpdate = true;
     651  
     
     652  
             /**
     653  
              * Get the value of needsUpdate.
     654  
              *
     655  
              * @return the value of needsUpdate
     656  
              */
     657  
             public boolean getNeedsUpdate() {
     658  0
                 return needsUpdate;
     659  
             }
     660  
     
     661  
             /**
     662  
              * Set the value of needsUpdate.
     663  
              *
     664  
              * @param needsUpdate new value of needsUpdate
     665  
              */
     666  
             public void setNeedsUpdate(boolean needsUpdate) {
     667  0
                 this.needsUpdate = needsUpdate;
     668  0
             }
     669  
         }
     670  
         //</editor-fold>
     671  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException.html new file mode 100644 index 000000000..bba031245 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.InvalidDataException.html @@ -0,0 +1,124 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.xml.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.xml;
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.html new file mode 100644 index 000000000..2056fc36a --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve12Handler.html @@ -0,0 +1,462 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.xml.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.xml;
     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  3
     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  3
         private boolean skip = false;
     66  
         /**
     67  
          * flag indicating if there is a previous version.
     68  
          */
     69  3
         private boolean hasPreviousVersion = false;
     70  
         /**
     71  
          * The current element.
     72  
          */
     73  3
         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  3
             return vulnerabilities;
     86  
         }
     87  
     
     88  
         @Override
     89  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     90  3666
             current.setNode(qName);
     91  3666
             if (current.isEntryNode()) {
     92  81
                 vendor = null;
     93  81
                 product = null;
     94  81
                 hasPreviousVersion = false;
     95  81
                 final String reject = attributes.getValue("reject");
     96  81
                 skip = "1".equals(reject);
     97  81
                 if (!skip) {
     98  78
                     vulnerability = attributes.getValue("name");
     99  78
                     software = new ArrayList<VulnerableSoftware>();
     100  
                 } else {
     101  3
                     vulnerability = null;
     102  3
                     software = null;
     103  
                 }
     104  81
             } else if (!skip && current.isProdNode()) {
     105  
     
     106  156
                 vendor = attributes.getValue("vendor");
     107  156
                 product = attributes.getValue("name");
     108  3429
             } else if (!skip && current.isVersNode()) {
     109  2283
                 final String prev = attributes.getValue("prev");
     110  2283
                 if (prev != null && "1".equals(prev)) {
     111  3
                     hasPreviousVersion = true;
     112  3
                     final String edition = attributes.getValue("edition");
     113  3
                     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  3
                     String cpe = "cpe:/a:" + vendor + ":" + product;
     119  3
                     if (num != null) {
     120  3
                         cpe += ":" + num;
     121  
                     }
     122  3
                     if (edition != null) {
     123  0
                         cpe += ":" + edition;
     124  
                     }
     125  3
                     final VulnerableSoftware vs = new VulnerableSoftware();
     126  3
                     vs.setCpe(cpe);
     127  3
                     vs.setPreviousVersion(prev);
     128  3
                     software.add(vs);
     129  
                 }
     130  2283
             } else if (current.isNVDNode()) {
     131  3
                 final String nvdVer = attributes.getValue("nvd_xml_version");
     132  3
                 if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
     133  0
                     throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
     134  
                 }
     135  3
                 vulnerabilities = new HashMap<String, List<VulnerableSoftware>>();
     136  
             }
     137  3666
         }
     138  
     
     139  
         @Override
     140  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     141  3666
             current.setNode(qName);
     142  3666
             if (current.isEntryNode()) {
     143  81
                 if (!skip && hasPreviousVersion) {
     144  3
                     vulnerabilities.put(vulnerability, software);
     145  
                 }
     146  81
                 vulnerability = null;
     147  81
                 software = null;
     148  
             }
     149  3666
         }
     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  3
         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  7332
                 this.node = node;
     199  7332
             }
     200  
     
     201  
             /**
     202  
              * Checks if the handler is at the NVD node.
     203  
              *
     204  
              * @return true or false
     205  
              */
     206  
             public boolean isNVDNode() {
     207  1146
                 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  7332
                 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  3576
                 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  3420
                 return VERS.equals(node);
     244  
             }
     245  
         }
     246  
         // </editor-fold>
     247  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.html new file mode 100644 index 000000000..bcb08d831 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler.html @@ -0,0 +1,909 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    NvdCve20Handler
    76%
    97/126
    84%
    73/86
    3
    NvdCve20Handler$Element
    94%
    18/19
    N/A
    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.nvdcve.xml;
     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.data.cpe.Index;
     28  
     import org.owasp.dependencycheck.data.nvdcve.CveDB;
     29  
     import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
     30  
     import org.owasp.dependencycheck.dependency.Reference;
     31  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     32  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     33  
     import org.xml.sax.Attributes;
     34  
     import org.xml.sax.SAXException;
     35  
     import org.xml.sax.SAXNotSupportedException;
     36  
     import org.xml.sax.helpers.DefaultHandler;
     37  
     
     38  
     /**
     39  
      * A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
     40  
      *
     41  
      * @author Jeremy Long (jeremy.long@owasp.org)
     42  
      */
     43  3
     public class NvdCve20Handler extends DefaultHandler {
     44  
     
     45  
         /**
     46  
          * the current supported schema version.
     47  
          */
     48  
         private static final String CURRENT_SCHEMA_VERSION = "2.0";
     49  
         /**
     50  
          * the current element.
     51  
          */
     52  3
         private final Element current = new Element();
     53  
         /**
     54  
          * the text of the node.
     55  
          */
     56  
         private StringBuilder nodeText;
     57  
         /**
     58  
          * the vulnerability.
     59  
          */
     60  
         private Vulnerability vulnerability;
     61  
         /**
     62  
          * a reference for the cve.
     63  
          */
     64  
         private Reference reference;
     65  
         /**
     66  
          * flag indicating whether the application has a cpe.
     67  
          */
     68  3
         private boolean hasApplicationCpe = false;
     69  
         /**
     70  
          * The total number of entries parsed.
     71  
          */
     72  
         private int totalNumberOfEntries;
     73  
     
     74  
         /**
     75  
          * Get the value of totalNumberOfEntries.
     76  
          *
     77  
          * @return the value of totalNumberOfEntries
     78  
          */
     79  
         public int getTotalNumberOfEntries() {
     80  0
             return totalNumberOfEntries;
     81  
         }
     82  
         /**
     83  
          * The total number of application entries parsed.
     84  
          */
     85  
         private int totalNumberOfApplicationEntries;
     86  
     
     87  
         /**
     88  
          * Get the value of totalNumberOfApplicationEntries.
     89  
          *
     90  
          * @return the value of totalNumberOfApplicationEntries
     91  
          */
     92  
         public int getTotalNumberOfApplicationEntries() {
     93  0
             return totalNumberOfApplicationEntries;
     94  
         }
     95  
     
     96  
         @Override
     97  
         public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
     98  7236
             current.setNode(qName);
     99  7236
             if (current.isEntryNode()) {
     100  81
                 hasApplicationCpe = false;
     101  81
                 vulnerability = new Vulnerability();
     102  81
                 vulnerability.setName(attributes.getValue("id"));
     103  7155
             } else if (current.isVulnProductNode()) {
     104  2181
                 nodeText = new StringBuilder(100);
     105  4974
             } else if (current.isVulnReferencesNode()) {
     106  270
                 final String lang = attributes.getValue("xml:lang");
     107  270
                 if ("en".equals(lang)) {
     108  270
                     reference = new Reference();
     109  
                 } else {
     110  0
                     reference = null;
     111  
                 }
     112  270
             } else if (reference != null && current.isVulnReferenceNode()) {
     113  270
                 reference.setUrl(attributes.getValue("href"));
     114  270
                 nodeText = new StringBuilder(130);
     115  4434
             } else if (reference != null && current.isVulnSourceNode()) {
     116  270
                 nodeText = new StringBuilder(30);
     117  4164
             } else if (current.isVulnSummaryNode()) {
     118  81
                 nodeText = new StringBuilder(500);
     119  4083
             } else if (current.isNVDNode()) {
     120  3
                 final String nvdVer = attributes.getValue("nvd_xml_version");
     121  3
                 if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
     122  0
                     throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
     123  
                 }
     124  3
             } else if (current.isVulnCWENode()) {
     125  57
                 vulnerability.setCwe(attributes.getValue("id"));
     126  4023
             } else if (current.isCVSSScoreNode()) {
     127  78
                 nodeText = new StringBuilder(5);
     128  3945
             } else if (current.isCVSSAccessVectorNode()) {
     129  78
                 nodeText = new StringBuilder(20);
     130  3867
             } else if (current.isCVSSAccessComplexityNode()) {
     131  78
                 nodeText = new StringBuilder(20);
     132  3789
             } else if (current.isCVSSAuthenticationNode()) {
     133  78
                 nodeText = new StringBuilder(20);
     134  3711
             } else if (current.isCVSSAvailabilityImpactNode()) {
     135  78
                 nodeText = new StringBuilder(20);
     136  3633
             } else if (current.isCVSSConfidentialityImpactNode()) {
     137  78
                 nodeText = new StringBuilder(20);
     138  3555
             } else if (current.isCVSSIntegrityImpactNode()) {
     139  78
                 nodeText = new StringBuilder(20);
     140  
             }
     141  7236
         }
     142  
     
     143  
         @Override
     144  
         public void characters(char[] ch, int start, int length) throws SAXException {
     145  11883
             if (nodeText != null) {
     146  3372
                 nodeText.append(ch, start, length);
     147  
             }
     148  11883
         }
     149  
     
     150  
         @Override
     151  
         public void endElement(String uri, String localName, String qName) throws SAXException {
     152  7236
             current.setNode(qName);
     153  7236
             if (current.isEntryNode()) {
     154  81
                 totalNumberOfEntries += 1;
     155  81
                 if (hasApplicationCpe) {
     156  54
                     totalNumberOfApplicationEntries += 1;
     157  
                     try {
     158  54
                         saveEntry(vulnerability);
     159  0
                     } catch (DatabaseException ex) {
     160  0
                         throw new SAXException(ex);
     161  0
                     } catch (CorruptIndexException ex) {
     162  0
                         throw new SAXException(ex);
     163  0
                     } catch (IOException ex) {
     164  0
                         throw new SAXException(ex);
     165  54
                     }
     166  
                 }
     167  81
                 vulnerability = null;
     168  7155
             } else if (current.isCVSSScoreNode()) {
     169  
                 try {
     170  78
                     final float score = Float.parseFloat(nodeText.toString());
     171  78
                     vulnerability.setCvssScore(score);
     172  0
                 } catch (NumberFormatException ex) {
     173  0
                     Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.SEVERE, "Error parsing CVSS Score.");
     174  0
                     Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.FINE, null, ex);
     175  78
                 }
     176  78
                 nodeText = null;
     177  7077
             } else if (current.isCVSSAccessVectorNode()) {
     178  78
                 vulnerability.setCvssAccessVector(nodeText.toString());
     179  78
                 nodeText = null;
     180  6999
             } else if (current.isCVSSAccessComplexityNode()) {
     181  78
                 vulnerability.setCvssAccessComplexity(nodeText.toString());
     182  78
                 nodeText = null;
     183  6921
             } else if (current.isCVSSAuthenticationNode()) {
     184  78
                 vulnerability.setCvssAuthentication(nodeText.toString());
     185  78
                 nodeText = null;
     186  6843
             } else if (current.isCVSSAvailabilityImpactNode()) {
     187  78
                 vulnerability.setCvssAvailabilityImpact(nodeText.toString());
     188  78
                 nodeText = null;
     189  6765
             } else if (current.isCVSSConfidentialityImpactNode()) {
     190  78
                 vulnerability.setCvssConfidentialityImpact(nodeText.toString());
     191  78
                 nodeText = null;
     192  6687
             } else if (current.isCVSSIntegrityImpactNode()) {
     193  78
                 vulnerability.setCvssIntegrityImpact(nodeText.toString());
     194  78
                 nodeText = null;
     195  6609
             } else if (current.isVulnProductNode()) {
     196  2181
                 final String cpe = nodeText.toString();
     197  2181
                 if (cpe.startsWith("cpe:/a:")) {
     198  1842
                     hasApplicationCpe = true;
     199  1842
                     vulnerability.addVulnerableSoftware(cpe);
     200  
                 }
     201  2181
                 nodeText = null;
     202  2181
             } else if (reference != null && current.isVulnReferencesNode()) {
     203  270
                 vulnerability.addReference(reference);
     204  270
                 reference = null;
     205  4158
             } else if (reference != null && current.isVulnReferenceNode()) {
     206  270
                 reference.setName(nodeText.toString());
     207  270
                 nodeText = null;
     208  3888
             } else if (reference != null && current.isVulnSourceNode()) {
     209  270
                 reference.setSource(nodeText.toString());
     210  270
                 nodeText = null;
     211  3618
             } else if (current.isVulnSummaryNode()) {
     212  81
                 vulnerability.setDescription(nodeText.toString());
     213  81
                 nodeText = null;
     214  
             }
     215  7236
         }
     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. This is a callback method
     247  
          * called by the Sax Parser Handler
     248  
          * {@link org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler}.
     249  
          *
     250  
          * @param vuln the vulnerability to store in the database
     251  
          * @throws DatabaseException thrown if there is an error writing to the
     252  
          * database
     253  
          * @throws CorruptIndexException is thrown if the CPE Index is corrupt
     254  
          * @throws IOException thrown if there is an IOException with the CPE Index
     255  
          */
     256  
         public void saveEntry(Vulnerability vuln) throws DatabaseException, CorruptIndexException, IOException {
     257  54
             if (cveDB == null) {
     258  54
                 return;
     259  
             }
     260  0
             final String cveName = vuln.getName();
     261  0
             if (prevVersionVulnMap.containsKey(cveName)) {
     262  0
                 final List<VulnerableSoftware> vulnSoftware = prevVersionVulnMap.get(cveName);
     263  0
                 for (VulnerableSoftware vs : vulnSoftware) {
     264  0
                     vuln.updateVulnerableSoftware(vs);
     265  
                 }
     266  
             }
     267  0
             for (VulnerableSoftware vs : vuln.getVulnerableSoftware()) {
     268  0
                 if (cpeIndex != null) {
     269  0
                     cpeIndex.saveEntry(vs);
     270  
                 }
     271  
             }
     272  0
             cveDB.updateVulnerability(vuln);
     273  0
         }
     274  
         /**
     275  
          * the cpe index.
     276  
          */
     277  
         private Index cpeIndex;
     278  
     
     279  
         /**
     280  
          * Sets the cpe index.
     281  
          *
     282  
          * @param index the CPE Lucene Index
     283  
          */
     284  
         void setCpeIndex(Index index) {
     285  0
             cpeIndex = index;
     286  0
         }
     287  
     
     288  
         // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
     289  
         /**
     290  
          * A simple class to maintain information about the current element while
     291  
          * parsing the NVD CVE XML.
     292  
          */
     293  3
         protected static class Element {
     294  
     
     295  
             /**
     296  
              * A node type in the NVD CVE Schema 2.0
     297  
              */
     298  
             public static final String NVD = "nvd";
     299  
             /**
     300  
              * A node type in the NVD CVE Schema 2.0
     301  
              */
     302  
             public static final String ENTRY = "entry";
     303  
             /**
     304  
              * A node type in the NVD CVE Schema 2.0
     305  
              */
     306  
             public static final String VULN_PRODUCT = "vuln:product";
     307  
             /**
     308  
              * A node type in the NVD CVE Schema 2.0
     309  
              */
     310  
             public static final String VULN_REFERENCES = "vuln:references";
     311  
             /**
     312  
              * A node type in the NVD CVE Schema 2.0
     313  
              */
     314  
             public static final String VULN_SOURCE = "vuln:source";
     315  
             /**
     316  
              * A node type in the NVD CVE Schema 2.0
     317  
              */
     318  
             public static final String VULN_REFERENCE = "vuln:reference";
     319  
             /**
     320  
              * A node type in the NVD CVE Schema 2.0
     321  
              */
     322  
             public static final String VULN_SUMMARY = "vuln:summary";
     323  
             /**
     324  
              * A node type in the NVD CVE Schema 2.0
     325  
              */
     326  
             public static final String VULN_CWE = "vuln:cwe";
     327  
             /**
     328  
              * A node type in the NVD CVE Schema 2.0
     329  
              */
     330  
             public static final String CVSS_SCORE = "cvss:score";
     331  
             /**
     332  
              * A node type in the NVD CVE Schema 2.0
     333  
              */
     334  
             public static final String CVSS_ACCESS_VECTOR = "cvss:access-vector";
     335  
             /**
     336  
              * A node type in the NVD CVE Schema 2.0
     337  
              */
     338  
             public static final String CVSS_ACCESS_COMPLEXITY = "cvss:access-complexity";
     339  
             /**
     340  
              * A node type in the NVD CVE Schema 2.0
     341  
              */
     342  
             public static final String CVSS_AUTHENTICATION = "cvss:authentication";
     343  
             /**
     344  
              * A node type in the NVD CVE Schema 2.0
     345  
              */
     346  
             public static final String CVSS_CONFIDENTIALITY_IMPACT = "cvss:confidentiality-impact";
     347  
             /**
     348  
              * A node type in the NVD CVE Schema 2.0
     349  
              */
     350  
             public static final String CVSS_INTEGRITY_IMPACT = "cvss:integrity-impact";
     351  
             /**
     352  
              * A node type in the NVD CVE Schema 2.0
     353  
              */
     354  
             public static final String CVSS_AVAILABILITY_IMPACT = "cvss:availability-impact";
     355  
             /**
     356  
              * The current node.
     357  
              */
     358  
             private String node;
     359  
     
     360  
             /**
     361  
              * Gets the value of node.
     362  
              *
     363  
              * @return the value of node
     364  
              */
     365  
             public String getNode() {
     366  0
                 return this.node;
     367  
             }
     368  
     
     369  
             /**
     370  
              * Sets the value of node.
     371  
              *
     372  
              * @param node new value of node
     373  
              */
     374  
             public void setNode(String node) {
     375  14472
                 this.node = node;
     376  14472
             }
     377  
     
     378  
             /**
     379  
              * Checks if the handler is at the NVD node.
     380  
              *
     381  
              * @return true or false
     382  
              */
     383  
             public boolean isNVDNode() {
     384  4083
                 return NVD.equals(node);
     385  
             }
     386  
     
     387  
             /**
     388  
              * Checks if the handler is at the ENTRY node.
     389  
              *
     390  
              * @return true or false
     391  
              */
     392  
             public boolean isEntryNode() {
     393  14472
                 return ENTRY.equals(node);
     394  
             }
     395  
     
     396  
             /**
     397  
              * Checks if the handler is at the VULN_PRODUCT node.
     398  
              *
     399  
              * @return true or false
     400  
              */
     401  
             public boolean isVulnProductNode() {
     402  13764
                 return VULN_PRODUCT.equals(node);
     403  
             }
     404  
     
     405  
             /**
     406  
              * Checks if the handler is at the REFERENCES node.
     407  
              *
     408  
              * @return true or false
     409  
              */
     410  
             public boolean isVulnReferencesNode() {
     411  5784
                 return VULN_REFERENCES.equals(node);
     412  
             }
     413  
     
     414  
             /**
     415  
              * Checks if the handler is at the REFERENCE node.
     416  
              *
     417  
              * @return true or false
     418  
              */
     419  
             public boolean isVulnReferenceNode() {
     420  1080
                 return VULN_REFERENCE.equals(node);
     421  
             }
     422  
     
     423  
             /**
     424  
              * Checks if the handler is at the VULN_SOURCE node.
     425  
              *
     426  
              * @return true or false
     427  
              */
     428  
             public boolean isVulnSourceNode() {
     429  540
                 return VULN_SOURCE.equals(node);
     430  
             }
     431  
     
     432  
             /**
     433  
              * Checks if the handler is at the VULN_SUMMARY node.
     434  
              *
     435  
              * @return true or false
     436  
              */
     437  
             public boolean isVulnSummaryNode() {
     438  7782
                 return VULN_SUMMARY.equals(node);
     439  
             }
     440  
     
     441  
             /**
     442  
              * Checks if the handler is at the VULN_CWE node.
     443  
              *
     444  
              * @return true or false
     445  
              */
     446  
             public boolean isVulnCWENode() {
     447  4080
                 return VULN_CWE.equals(node);
     448  
             }
     449  
     
     450  
             /**
     451  
              * Checks if the handler is at the CVSS_SCORE node.
     452  
              *
     453  
              * @return true or false
     454  
              */
     455  
             public boolean isCVSSScoreNode() {
     456  11178
                 return CVSS_SCORE.equals(node);
     457  
             }
     458  
     
     459  
             /**
     460  
              * Checks if the handler is at the CVSS_ACCESS_VECTOR node.
     461  
              *
     462  
              * @return true or false
     463  
              */
     464  
             public boolean isCVSSAccessVectorNode() {
     465  11022
                 return CVSS_ACCESS_VECTOR.equals(node);
     466  
             }
     467  
     
     468  
             /**
     469  
              * Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node.
     470  
              *
     471  
              * @return true or false
     472  
              */
     473  
             public boolean isCVSSAccessComplexityNode() {
     474  10866
                 return CVSS_ACCESS_COMPLEXITY.equals(node);
     475  
             }
     476  
     
     477  
             /**
     478  
              * Checks if the handler is at the CVSS_AUTHENTICATION node.
     479  
              *
     480  
              * @return true or false
     481  
              */
     482  
             public boolean isCVSSAuthenticationNode() {
     483  10710
                 return CVSS_AUTHENTICATION.equals(node);
     484  
             }
     485  
     
     486  
             /**
     487  
              * Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node.
     488  
              *
     489  
              * @return true or false
     490  
              */
     491  
             public boolean isCVSSConfidentialityImpactNode() {
     492  10398
                 return CVSS_CONFIDENTIALITY_IMPACT.equals(node);
     493  
             }
     494  
     
     495  
             /**
     496  
              * Checks if the handler is at the CVSS_INTEGRITY_IMPACT node.
     497  
              *
     498  
              * @return true or false
     499  
              */
     500  
             public boolean isCVSSIntegrityImpactNode() {
     501  10242
                 return CVSS_INTEGRITY_IMPACT.equals(node);
     502  
             }
     503  
     
     504  
             /**
     505  
              * Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node.
     506  
              *
     507  
              * @return true or false
     508  
              */
     509  
             public boolean isCVSSAvailabilityImpactNode() {
     510  10554
                 return CVSS_AVAILABILITY_IMPACT.equals(node);
     511  
             }
     512  
         }
     513  
         // </editor-fold>
     514  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Dependency.html new file mode 100644 index 000000000..5df566a89 --- /dev/null +++ b/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
    57%
    80/140
    12%
    15/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  174
     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  282
         public Dependency() {
     89  282
             vendorEvidence = new EvidenceCollection();
     90  282
             productEvidence = new EvidenceCollection();
     91  282
             versionEvidence = new EvidenceCollection();
     92  282
             identifiers = new TreeSet<Identifier>();
     93  282
             vulnerabilities = new TreeSet<Vulnerability>(new VulnerabilityComparator());
     94  282
         }
     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  228
             this();
     103  228
             this.actualFilePath = file.getPath();
     104  228
             this.filePath = this.actualFilePath;
     105  228
             this.fileName = file.getName();
     106  228
             this.fileExtension = FileUtils.getFileExtension(fileName);
     107  228
             determineHashes(file);
     108  228
         }
     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  792
             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  183
             this.fileName = fileName;
     126  183
         }
     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  6
             this.actualFilePath = actualFilePath;
     135  6
         }
     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  294
             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  183
             this.filePath = filePath;
     153  183
         }
     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  183
             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  6
             this.fileExtension = fileExtension;
     173  6
         }
     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  183
             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  6
             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  231
             this.md5sum = md5sum;
     200  231
         }
     201  
     
     202  
         /**
     203  
          * Returns the SHA1 Checksum of the dependency.
     204  
          *
     205  
          * @return the SHA1 Checksum
     206  
          */
     207  
         public String getSha1sum() {
     208  6
             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  231
             this.sha1sum = sha1sum;
     218  231
         }
     219  
     
     220  
         /**
     221  
          * Returns a List of Identifiers.
     222  
          *
     223  
          * @return an ArrayList of Identifiers.
     224  
          */
     225  
         public Set<Identifier> getIdentifiers() {
     226  99
             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  3
             this.identifiers = identifiers;
     236  3
         }
     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  3
             final Identifier i = new Identifier(type, value, url);
     248  3
             this.identifiers.add(i);
     249  3
         }
     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  48
             this.identifiers.add(identifier);
     259  48
         }
     260  
     
     261  
         /**
     262  
          * Returns the evidence used to identify this dependency.
     263  
          *
     264  
          * @return an EvidenceCollection.
     265  
          */
     266  
         public EvidenceCollection getEvidence() {
     267  3
             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  3
             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  648
             return this.vendorEvidence;
     286  
         }
     287  
     
     288  
         /**
     289  
          * Gets the Product Evidence.
     290  
          *
     291  
          * @return an EvidenceCollection.
     292  
          */
     293  
         public EvidenceCollection getProductEvidence() {
     294  1050
             return this.productEvidence;
     295  
         }
     296  
     
     297  
         /**
     298  
          * Gets the Version Evidence.
     299  
          *
     300  
          * @return an EvidenceCollection.
     301  
          */
     302  
         public EvidenceCollection getVersionEvidence() {
     303  252
             return this.versionEvidence;
     304  
         }
     305  
         /**
     306  
          * A list of exceptions that occurred during analysis of this dependency.
     307  
          */
     308  282
         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  0
             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  21
             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  39
             this.description = description;
     357  39
         }
     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  9
             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  12
             this.license = license;
     379  12
         }
     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  0
             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  228
             String md5 = null;
     410  228
             String sha1 = null;
     411  
             try {
     412  228
                 md5 = Checksum.getMD5Checksum(file);
     413  228
                 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  228
             }
     423  228
             this.setMd5sum(md5);
     424  228
             this.setSha1sum(sha1);
     425  228
         }
     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  0
             this.vulnerabilities.add(vulnerability);
     434  0
         }
     435  
         /**
     436  
          * A collection of related dependencies.
     437  
          */
     438  282
         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  0
             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  174
             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  177
             int hash = 3;
     551  177
             hash = 47 * hash + (this.actualFilePath != null ? this.actualFilePath.hashCode() : 0);
     552  177
             hash = 47 * hash + (this.filePath != null ? this.filePath.hashCode() : 0);
     553  177
             hash = 47 * hash + (this.fileName != null ? this.fileName.hashCode() : 0);
     554  177
             hash = 47 * hash + (this.fileExtension != null ? this.fileExtension.hashCode() : 0);
     555  177
             hash = 47 * hash + (this.md5sum != null ? this.md5sum.hashCode() : 0);
     556  177
             hash = 47 * hash + (this.sha1sum != null ? this.sha1sum.hashCode() : 0);
     557  177
             hash = 47 * hash + (this.identifiers != null ? this.identifiers.hashCode() : 0);
     558  177
             hash = 47 * hash + (this.vendorEvidence != null ? this.vendorEvidence.hashCode() : 0);
     559  177
             hash = 47 * hash + (this.productEvidence != null ? this.productEvidence.hashCode() : 0);
     560  177
             hash = 47 * hash + (this.versionEvidence != null ? this.versionEvidence.hashCode() : 0);
     561  177
             hash = 47 * hash + (this.analysisExceptions != null ? this.analysisExceptions.hashCode() : 0);
     562  177
             hash = 47 * hash + (this.description != null ? this.description.hashCode() : 0);
     563  177
             hash = 47 * hash + (this.license != null ? this.license.hashCode() : 0);
     564  177
             hash = 47 * hash + (this.vulnerabilities != null ? this.vulnerabilities.hashCode() : 0);
     565  177
             hash = 47 * hash + (this.relatedDependencies != null ? this.relatedDependencies.hashCode() : 0);
     566  177
             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/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Evidence.html new file mode 100644 index 000000000..0b8333f1a --- /dev/null +++ b/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
    46%
    23/49
    22%
    9/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  229218
     public class Evidence implements Comparable<Evidence> {
     27  
     
     28  
         /**
     29  
          * The confidence that the evidence is "high" quality.
     30  
          */
     31  54
         public enum Confidence {
     32  
     
     33  
             /**
     34  
              * High confidence evidence.
     35  
              */
     36  3
             HIGHEST,
     37  
             /**
     38  
              * High confidence evidence.
     39  
              */
     40  3
             HIGH,
     41  
             /**
     42  
              * Medium confidence evidence.
     43  
              */
     44  3
             MEDIUM,
     45  
             /**
     46  
              * Low confidence evidence.
     47  
              */
     48  3
             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  110049
         public Evidence(String source, String name, String value, Confidence confidence) {
     66  110049
             this.source = source;
     67  110049
             this.name = name;
     68  110049
             this.value = value;
     69  110049
             this.confidence = confidence;
     70  110049
         }
     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  39
             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  6
             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  4911
             used = true;
     127  4911
             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  288
             used = used || setUsed;
     140  288
             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  6099
             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  4083
             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  229218
             if (source.equals(o.source)) {
     251  183828
                 if (name.equals(o.name)) {
     252  183309
                     if (value.equals(o.value)) {
     253  109236
                         if (confidence.equals(o.confidence)) {
     254  109236
                             return 0; //they are equal
     255  
                         } else {
     256  0
                             return confidence.compareTo(o.confidence);
     257  
                         }
     258  
                     } else {
     259  74073
                         return value.compareToIgnoreCase(o.value);
     260  
                     }
     261  
                 } else {
     262  519
                     return name.compareToIgnoreCase(o.name);
     263  
                 }
     264  
             } else {
     265  45390
                 return source.compareToIgnoreCase(o.source);
     266  
             }
     267  
         }
     268  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.EvidenceCollection.html new file mode 100644 index 000000000..282529a2c --- /dev/null +++ b/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  651
         private static final Filter<Evidence> HIGHEST_CONFIDENCE = new Filter<Evidence>() {
     47  
             public boolean passes(Evidence evidence) {
     48  648
                 return evidence.getConfidence() == Evidence.Confidence.HIGHEST;
     49  
             }
     50  
         };
     51  
         /**
     52  
          * Used to iterate over high confidence evidence contained in the
     53  
          * collection.
     54  
          */
     55  642
         private static final Filter<Evidence> HIGH_CONFIDENCE = new Filter<Evidence>() {
     56  
             public boolean passes(Evidence evidence) {
     57  639
                 return evidence.getConfidence() == Evidence.Confidence.HIGH;
     58  
             }
     59  
         };
     60  
         /**
     61  
          * Used to iterate over medium confidence evidence contained in the
     62  
          * collection.
     63  
          */
     64  3
         private static final Filter<Evidence> MEDIUM_CONFIDENCE = new Filter<Evidence>() {
     65  
             public boolean passes(Evidence evidence) {
     66  627
                 return evidence.getConfidence() == Evidence.Confidence.MEDIUM;
     67  
             }
     68  
         };
     69  
         /**
     70  
          * Used to iterate over low confidence evidence contained in the collection.
     71  
          */
     72  3
         private static final Filter<Evidence> LOW_CONFIDENCE = new Filter<Evidence>() {
     73  
             public boolean passes(Evidence evidence) {
     74  1170
                 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  3
         private static final Filter<Evidence> EVIDENCE_USED = new Filter<Evidence>() {
     82  
             public boolean passes(Evidence evidence) {
     83  6093
                 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  423
             if (confidence == Evidence.Confidence.HIGHEST) {
     96  93
                 return EvidenceCollection.HIGHEST_CONFIDENCE.filter(this.list);
     97  330
             } else if (confidence == Evidence.Confidence.HIGH) {
     98  93
                 return EvidenceCollection.HIGH_CONFIDENCE.filter(this.list);
     99  237
             } else if (confidence == Evidence.Confidence.MEDIUM) {
     100  90
                 return EvidenceCollection.MEDIUM_CONFIDENCE.filter(this.list);
     101  
             } else {
     102  147
                 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  852
         public EvidenceCollection() {
     118  852
             list = new TreeSet<Evidence>();
     119  852
             weightedStrings = new HashSet<String>();
     120  852
         }
     121  
     
     122  
         /**
     123  
          * Adds evidence to the collection.
     124  
          *
     125  
          * @param e Evidence.
     126  
          */
     127  
         public void addEvidence(Evidence e) {
     128  110007
             list.add(e);
     129  110007
         }
     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  109998
             final Evidence e = new Evidence(source, name, value, confidence);
     142  109998
             addEvidence(e);
     143  109998
         }
     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  114
             weightedStrings.add(str);
     162  114
         }
     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  219
             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  873
             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  849
             if (text == null) {
     239  0
                 return false;
     240  
             }
     241  849
             final String textToTest = text.toLowerCase();
     242  
     
     243  849
             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  4068
                 final String value = urlCorrection(e.getValue().toLowerCase()).replaceAll("[\\s_-]", "");
     246  4068
                 if (value.contains(textToTest)) {
     247  384
                     return true;
     248  
                 }
     249  3684
             }
     250  465
             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  216
             for (Evidence e : list) {
     283  993
                 if (e.getConfidence().equals(confidence)) {
     284  210
                     return true;
     285  
                 }
     286  
             }
     287  6
             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  3
             final EvidenceCollection ret = new EvidenceCollection();
     299  12
             for (EvidenceCollection col : ec) {
     300  9
                 for (Evidence e : col.list) {
     301  6
                     if (e.isUsed()) {
     302  3
                         ret.addEvidence(e);
     303  
                     }
     304  
                 }
     305  
             }
     306  3
             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  3
             final EvidenceCollection ret = new EvidenceCollection();
     317  12
             for (EvidenceCollection col : ec) {
     318  9
                 ret.list.addAll(col.list);
     319  9
                 ret.weightedStrings.addAll(col.weightedStrings);
     320  
             }
     321  3
             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  9
             final StringBuilder sb = new StringBuilder();
     332  9
             for (Evidence e : this.list) {
     333  33
                 sb.append(e.getValue()).append(' ');
     334  
             }
     335  9
             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  270
             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  4068
             if (value == null || !UrlStringUtils.containsUrl(value)) {
     365  4020
                 return value;
     366  
             }
     367  48
             final StringBuilder sb = new StringBuilder(value.length());
     368  48
             final String[] parts = value.split("\\s");
     369  96
             for (String part : parts) {
     370  48
                 if (UrlStringUtils.isUrl(part)) {
     371  
                     try {
     372  48
                         final List<String> data = UrlStringUtils.extractImportantUrlData(part);
     373  48
                         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  48
                     }
     378  
                 } else {
     379  0
                     sb.append(' ').append(part);
     380  
                 }
     381  
             }
     382  48
             return sb.toString().trim();
     383  
         }
     384  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Identifier.html new file mode 100644 index 000000000..a15d6a1f7 --- /dev/null +++ b/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
    25%
    10/39
    4%
    1/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  54
     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  144
         public Identifier(String type, String value, String url) {
     35  144
             this.type = type;
     36  144
             this.value = value;
     37  144
             this.url = url;
     38  144
         }
     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  126
             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  0
             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  27
             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  0
             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  0
             int hash = 5;
     162  0
             hash = 53 * hash + (this.value != null ? this.value.hashCode() : 0);
     163  0
             hash = 53 * hash + (this.type != null ? this.type.hashCode() : 0);
     164  0
             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  87
             if (o == null) {
     186  0
                 return -1;
     187  
             }
     188  87
             return this.value.compareTo(o.value);
     189  
         }
     190  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Reference.html new file mode 100644 index 000000000..ef4ea1c8b --- /dev/null +++ b/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
    32%
    11/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  1383
     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  0
             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  528
             this.name = name;
     56  528
         }
     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  0
             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  528
             this.url = url;
     78  528
         }
     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  0
             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  528
             this.source = source;
     100  528
         }
     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  855
             if (source.equals(o.source)) {
     140  135
                 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  135
                     return name.compareTo(o.name);
     148  
                 }
     149  
             } else {
     150  720
                 return source.compareTo(o.source);
     151  
             }
     152  
         }
     153  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.Vulnerability.html new file mode 100644 index 000000000..a989db10c --- /dev/null +++ b/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
    57%
    39/68
    18%
    3/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  135
     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  0
             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  135
             this.name = name;
     58  135
         }
     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  0
             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  135
             this.description = description;
     80  135
         }
     81  
         /**
     82  
          * References for this vulnerability.
     83  
          */
     84  135
         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  0
             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  270
             this.references.add(ref);
     111  270
         }
     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  258
             final Reference ref = new Reference();
     122  258
             ref.setSource(referenceSource);
     123  258
             ref.setName(referenceName);
     124  258
             ref.setUrl(referenceUrl);
     125  258
             this.references.add(ref);
     126  258
         }
     127  
         /**
     128  
          * A set of vulnerable software.
     129  
          */
     130  135
         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  0
             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  3636
             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  3669
             final VulnerableSoftware vs = new VulnerableSoftware();
     170  3669
             vs.setCpe(cpe);
     171  3669
             if (previousVersion != null) {
     172  33
                 vs.setPreviousVersion(previousVersion);
     173  
             }
     174  3669
             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  3669
             if (vulnerableSoftware.contains(vulnSoftware)) {
     185  0
                 vulnerableSoftware.remove(vulnSoftware);
     186  
             }
     187  3669
             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  0
             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  111
             this.cwe = cwe;
     210  111
         }
     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  0
             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  132
             this.cvssScore = cvssScore;
     232  132
         }
     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  132
             this.cvssAccessVector = cvssAccessVector;
     254  132
         }
     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  132
             this.cvssAccessComplexity = cvssAccessComplexity;
     276  132
         }
     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  132
             this.cvssAuthentication = cvssAuthentication;
     298  132
         }
     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  132
             this.cvssConfidentialityImpact = cvssConfidentialityImpact;
     320  132
         }
     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  132
             this.cvssIntegrityImpact = cvssIntegrityImpact;
     342  132
         }
     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  132
             this.cvssAvailabilityImpact = cvssAvailabilityImpact;
     364  132
         }
     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  0
             int hash = 5;
     384  0
             hash = 41 * hash + (this.name != null ? this.name.hashCode() : 0);
     385  0
             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/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerabilityComparator.html new file mode 100644 index 000000000..a6e922d38 --- /dev/null +++ b/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
    50%
    1/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  282
     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  0
             return o2.getName().compareTo(o1.getName());
     45  
         }
     46  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.dependency.VulnerableSoftware.html new file mode 100644 index 000000000..400649ee6 --- /dev/null +++ b/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
    74%
    68/91
    77%
    57/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  48142
     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  4733
                 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  4733
             }
     55  4733
         }
     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  5890
             this.name = cpeName;
     72  5890
             if (cpeName != null && cpeName.length() > 7) {
     73  5890
                 final String[] data = cpeName.substring(7).split(":");
     74  5890
                 if (data.length >= 1) {
     75  5890
                     this.setVendor(URLDecoder.decode(data[0].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
     76  5890
                     if (data.length >= 2) {
     77  5890
                         this.setProduct(URLDecoder.decode(data[1].replace("+", "%2B"), "UTF-8")); //.replaceAll("[_-]", " ")
     78  5890
                         if (data.length >= 3) {
     79  5874
                             version = URLDecoder.decode(data[2].replace("+", "%2B"), "UTF-8");
     80  5874
                             if (data.length >= 4) {
     81  159
                                 revision = URLDecoder.decode(data[3].replace("+", "%2B"), "UTF-8");
     82  159
                                 if (data.length >= 5) {
     83  0
                                     edition = URLDecoder.decode(data[4].replace("+", "%2B"), "UTF-8");
     84  
                                 }
     85  
                             }
     86  
                         }
     87  
                     }
     88  
                 }
     89  
             }
     90  5890
         }
     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  0
             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  36
             this.previousVersion = previousVersion;
     121  36
         }
     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  3
             if (obj == null) {
     133  0
                 return false;
     134  
             }
     135  3
             if (getClass() != obj.getClass()) {
     136  0
                 return false;
     137  
             }
     138  3
             final VulnerableSoftware other = (VulnerableSoftware) obj;
     139  3
             if ((this.getName() == null) ? (other.getName() != null) : !this.getName().equals(other.getName())) {
     140  3
                 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  1049
             int hash = 7;
     153  1049
             hash = 83 * hash + (this.getName() != null ? this.getName().hashCode() : 0);
     154  1049
             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  42255
             int result = 0;
     177  42255
             final String[] left = this.getName().split(":");
     178  42255
             final String[] right = vs.getName().split(":");
     179  42255
             final int max = (left.length <= right.length) ? left.length : right.length;
     180  42255
             if (max > 0) {
     181  253284
                 for (int i = 0; result == 0 && i < max; i++) {
     182  211029
                     final String[] subLeft = left[i].split("\\.");
     183  211029
                     final String[] subRight = right[i].split("\\.");
     184  211029
                     final int subMax = (subLeft.length <= subRight.length) ? subLeft.length : subRight.length;
     185  211029
                     if (subMax > 0) {
     186  486039
                         for (int x = 0; result == 0 && x < subMax; x++) {
     187  275010
                             if (isPositiveInteger(subLeft[x]) && isPositiveInteger(subRight[x])) {
     188  104238
                                 final int iLeft = Integer.parseInt(subLeft[x]);
     189  104238
                                 final int iRight = Integer.parseInt(subRight[x]);
     190  104238
                                 if (iLeft != iRight) {
     191  39402
                                     if (iLeft > iRight) {
     192  29022
                                         result = 2;
     193  
                                     } else {
     194  10380
                                         result = -2;
     195  
                                     }
     196  
                                 }
     197  104238
                             } else {
     198  170772
                                 result = subLeft[x].compareToIgnoreCase(subRight[x]);
     199  
                             }
     200  
                         }
     201  211029
                         if (result == 0) {
     202  169617
                             if (subLeft.length > subRight.length) {
     203  750
                                 result = 2;
     204  
                             }
     205  169617
                             if (subRight.length > subLeft.length) {
     206  21
                                 result = -2;
     207  
                             }
     208  
                         }
     209  
                     } else {
     210  0
                         result = left[i].compareToIgnoreCase(right[i]);
     211  
                     }
     212  
                 }
     213  42255
                 if (result == 0) {
     214  72
                     if (left.length > right.length) {
     215  42
                         result = 2;
     216  
                     }
     217  72
                     if (right.length > left.length) {
     218  30
                         result = -2;
     219  
                     }
     220  
                 }
     221  
             } else {
     222  0
                 result = this.getName().compareToIgnoreCase(vs.getName());
     223  
             }
     224  42255
             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  379464
             if (str == null || str.isEmpty()) {
     235  36
                 return false;
     236  
             }
     237  618510
             for (int i = 0; i < str.length(); i++) {
     238  409818
                 final char c = str.charAt(i);
     239  409818
                 if (c < '0' || c > '9') {
     240  170736
                     return false;
     241  
                 }
     242  
             }
     243  208692
             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  86791
             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  6197
             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  4893
             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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.MavenNamespaceFilter.html new file mode 100644 index 000000000..c7df04729 --- /dev/null +++ b/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  12
     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  12
         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  12
             super.startDocument();
     51  12
             startPrefixMapping("", NAMESPACE);
     52  12
         }
     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  3210
             super.startElement(NAMESPACE, localName, qName, atts);
     66  3210
         }
     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  3210
             super.endElement(NAMESPACE, localName, qName);
     80  3210
         }
     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  12
             if (!this.namespaceAdded) {
     92  12
                 namespaceAdded = true;
     93  12
                 super.startPrefixMapping("", NAMESPACE);
     94  
             }
     95  12
         }
     96  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Activation.html new file mode 100644 index 000000000..18104dae6 --- /dev/null +++ b/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  6
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationFile.html new file mode 100644 index 000000000..26abf8531 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationOS.html new file mode 100644 index 000000000..80974eec1 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ActivationProperty.html new file mode 100644 index 000000000..6f9db225e --- /dev/null +++ b/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  6
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Build.html new file mode 100644 index 000000000..7f8dd2f72 --- /dev/null +++ b/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  12
     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  3
         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  12
         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  6
         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  12
         @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  3
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.BuildBase.html new file mode 100644 index 000000000..a6e2e10f9 --- /dev/null +++ b/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  9
     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  9
         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  9
         @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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.CiManagement.html new file mode 100644 index 000000000..9595d4083 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Contributor.html new file mode 100644 index 000000000..ff6b32397 --- /dev/null +++ b/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  3
     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  3
         @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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Dependency.html new file mode 100644 index 000000000..e142481df --- /dev/null +++ b/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  192
     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  192
         @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  9
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DependencyManagement.html new file mode 100644 index 000000000..b6aa75623 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DeploymentRepository.html new file mode 100644 index 000000000..ec5040157 --- /dev/null +++ b/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  6
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Developer.html new file mode 100644 index 000000000..3058fada2 --- /dev/null +++ b/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  42
     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  42
         @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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.DistributionManagement.html new file mode 100644 index 000000000..81cd458d0 --- /dev/null +++ b/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  9
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Exclusion.html new file mode 100644 index 000000000..eb068cd06 --- /dev/null +++ b/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  12
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Extension.html new file mode 100644 index 000000000..26c1a39cf --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.IssueManagement.html new file mode 100644 index 000000000..e78835fd3 --- /dev/null +++ b/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  6
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.License.html new file mode 100644 index 000000000..d3512da64 --- /dev/null +++ b/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  3
     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  6
             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  6
             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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.MailingList.html new file mode 100644 index 000000000..c53b2e970 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Model.html new file mode 100644 index 000000000..845508d78 --- /dev/null +++ b/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  12
     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  12
             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  12
             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  12
             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  12
             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  18
             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  15
             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  12
             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  3
         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  12
         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  3
         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  3
         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  3
                 if (license == null) {
     1275  0
                     license = new ArrayList<License>();
     1276  
                 }
     1277  3
                 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  3
         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  12
         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  6
         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  12
         @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  3
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Notifier.html new file mode 100644 index 000000000..3909b1cd6 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ObjectFactory.html new file mode 100644 index 000000000..55fe5e958 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Organization.html new file mode 100644 index 000000000..26ebf09fe --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Parent.html new file mode 100644 index 000000000..ea37ffef6 --- /dev/null +++ b/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  12
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Plugin.html new file mode 100644 index 000000000..c53bd2e89 --- /dev/null +++ b/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  60
     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  36
         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  48
         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  60
         @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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginExecution.html new file mode 100644 index 000000000..dff982c7c --- /dev/null +++ b/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  54
     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  24
         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  54
         @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  54
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.PluginManagement.html new file mode 100644 index 000000000..b1a1d8b64 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Prerequisites.html new file mode 100644 index 000000000..6ae909334 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Profile.html new file mode 100644 index 000000000..d72dad564 --- /dev/null +++ b/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  18
     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  6
         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  18
         @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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Relocation.html new file mode 100644 index 000000000..4a9fc8b54 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportPlugin.html new file mode 100644 index 000000000..c4e69b5e1 --- /dev/null +++ b/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  36
     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  30
         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  36
         @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  9
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.ReportSet.html new file mode 100644 index 000000000..c9655dd5e --- /dev/null +++ b/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  9
     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  9
         @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  9
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Reporting.html new file mode 100644 index 000000000..b721bc80d --- /dev/null +++ b/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  12
     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  12
         @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  12
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Repository.html new file mode 100644 index 000000000..71f5d4fe9 --- /dev/null +++ b/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  9
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.RepositoryPolicy.html new file mode 100644 index 000000000..d76eb18cd --- /dev/null +++ b/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  18
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Resource.html new file mode 100644 index 000000000..600959b77 --- /dev/null +++ b/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
    0%
    0/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  18
     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  0
         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  18
         @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  6
         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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Scm.html new file mode 100644 index 000000000..9d42b18a6 --- /dev/null +++ b/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  12
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.Site.html new file mode 100644 index 000000000..02a6fb44b --- /dev/null +++ b/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  9
     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/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.jaxb.pom.generated.package-info.html new file mode 100644 index 000000000..520de4bcd --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.ReportGenerator.html new file mode 100644 index 000000000..343ce9b95 --- /dev/null +++ b/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
    0%
    0/82
    0%
    0/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  0
         public ReportGenerator(String applicationName, List<Dependency> dependencies, List<Analyzer> analyzers) {
     91  0
             engine = createVelocityEngine();
     92  0
             context = createContext();
     93  
     
     94  0
             engine.init();
     95  
     
     96  0
             context.put("applicationName", applicationName);
     97  0
             context.put("dependencies", dependencies);
     98  0
             context.put("analyzers", analyzers);
     99  0
         }
     100  
     
     101  
         /**
     102  
          * Creates a new Velocity Engine.
     103  
          *
     104  
          * @return a velocity engine.
     105  
          */
     106  
         private VelocityEngine createVelocityEngine() {
     107  0
             final VelocityEngine ve = new VelocityEngine();
     108  0
             ve.setProperty(RuntimeConstants.RUNTIME_LOG_LOGSYSTEM_CLASS, VelocityLoggerRedirect.class.getName());
     109  0
             ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
     110  0
             ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
     111  0
             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  0
             final ToolManager manager = new ToolManager();
     123  0
             final Context c = manager.createContext();
     124  0
             final EasyFactoryConfiguration config = new EasyFactoryConfiguration();
     125  0
             config.addDefaultTools();
     126  0
             config.toolbox("application").tool("esc", "org.apache.velocity.tools.generic.EscapeTool").tool("org.apache.velocity.tools.generic.DateTool");
     127  0
             manager.configure(config);
     128  0
             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  0
             InputStream input = null;
     191  0
             String templatePath = null;
     192  0
             final File f = new File(templateName);
     193  0
             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  0
                 templatePath = "templates/" + templateName + ".vsl";
     204  0
                 input = this.getClass().getClassLoader().getResourceAsStream(templatePath);
     205  
             }
     206  0
             if (input == null) {
     207  0
                 throw new IOException("Template file doesn't exist");
     208  
             }
     209  
     
     210  0
             final InputStreamReader reader = new InputStreamReader(input, "UTF-8");
     211  0
             OutputStreamWriter writer = null;
     212  0
             OutputStream outputStream = null;
     213  
     
     214  
             try {
     215  0
                 final File outDir = new File(outFileName).getParentFile();
     216  0
                 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  0
                 outputStream = new FileOutputStream(outFileName);
     224  0
                 writer = new OutputStreamWriter(outputStream, "UTF-8");
     225  
     
     226  0
                 if (!engine.evaluate(context, writer, templatePath, reader)) {
     227  0
                     throw new Exception("Failed to convert the template into html.");
     228  
                 }
     229  0
                 writer.flush();
     230  
             } finally {
     231  0
                 if (writer != null) {
     232  
                     try {
     233  0
                         writer.close();
     234  0
                     } catch (Exception ex) {
     235  0
                         Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     236  0
                     }
     237  
                 }
     238  0
                 if (outputStream != null) {
     239  
                     try {
     240  0
                         outputStream.close();
     241  0
                     } catch (Exception ex) {
     242  0
                         Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     243  0
                     }
     244  
                 }
     245  
                 try {
     246  0
                     reader.close();
     247  0
                 } catch (Exception ex) {
     248  0
                     Logger.getLogger(ReportGenerator.class.getName()).log(Level.FINEST, null, ex);
     249  0
                 }
     250  0
             }
     251  0
         }
     252  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.reporting.VelocityLoggerRedirect.html new file mode 100644 index 000000000..9b851c2ea --- /dev/null +++ b/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
    0%
    0/14
    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 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  0
     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  0
         }
     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  0
             Logger.getLogger(Velocity.class.getName()).log(getLevel(level), message);
     62  0
         }
     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  0
             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  0
             switch (velocityLevel) {
     94  
                 case TRACE_ID:
     95  0
                     return Level.ALL;
     96  
                 case DEBUG_ID:
     97  0
                     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/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Checksum.html new file mode 100644 index 000000000..1a29bd15f --- /dev/null +++ b/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  471
             InputStream fis = null;
     38  471
             byte[] buffer = new byte[1024];
     39  471
             MessageDigest complete = MessageDigest.getInstance(algorithm);
     40  
             int numRead;
     41  
             try {
     42  468
                 fis = new FileInputStream(file);
     43  
                 do {
     44  896628
                     numRead = fis.read(buffer);
     45  896628
                     if (numRead > 0) {
     46  896163
                         complete.update(buffer, 0, numRead);
     47  
                     }
     48  896628
                 } while (numRead != -1);
     49  
             } finally {
     50  468
                 if (fis != null) {
     51  
                     try {
     52  465
                         fis.close();
     53  0
                     } catch (IOException ex) {
     54  0
                         Logger.getLogger(Checksum.class.getName()).log(Level.FINEST, "Error closing file '" + file.getName() + "'.", ex);
     55  468
                     }
     56  
                 }
     57  
             }
     58  465
             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  231
             byte[] b = getChecksum("MD5", file);
     71  231
             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  231
             byte[] b = getChecksum("SHA1", file);
     84  231
             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  465
             if (raw == null) {
     99  0
                 return null;
     100  
             }
     101  465
             final StringBuilder hex = new StringBuilder(2 * raw.length);
     102  8832
             for (final byte b : raw) {
     103  8367
                 hex.append(HEXES.charAt((b & 0xF0) >> 4)).append(HEXES.charAt((b & 0x0F)));
     104  
             }
     105  465
             return hex.toString();
     106  
         }
     107  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersion.html new file mode 100644 index 000000000..abefff363 --- /dev/null +++ b/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
    77%
    48/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  39
     public class DependencyVersion implements Iterable, Comparable<DependencyVersion> {
     42  
     
     43  
         /**
     44  
          * Constructor for a empty DependencyVersion.
     45  
          */
     46  6
         public DependencyVersion() {
     47  6
         }
     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  4199
         public DependencyVersion(String version) {
     58  4199
             parseVersion(version);
     59  4199
         }
     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  4205
             versionParts = new ArrayList<String>();
     70  4205
             if (version != null) {
     71  4205
                 final Pattern rx = Pattern.compile("(\\d+|[a-z]+\\d+|(release|beta|alpha)$)");
     72  4205
                 final Matcher matcher = rx.matcher(version.toLowerCase());
     73  17264
                 while (matcher.find()) {
     74  13059
                     versionParts.add(matcher.group());
     75  
                 }
     76  4205
                 if (versionParts.isEmpty()) {
     77  47
                     versionParts.add(version);
     78  
                 }
     79  
             }
     80  4205
         }
     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  5664
             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  3
             this.versionParts = versionParts;
     102  3
         }
     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  3
             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  1244
             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  3911
             if (obj == null) {
     132  0
                 return false;
     133  
             }
     134  3911
             if (getClass() != obj.getClass()) {
     135  0
                 return false;
     136  
             }
     137  3911
             final DependencyVersion other = (DependencyVersion) obj;
     138  3911
             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  7904
             for (int i = 0; i < max; i++) {
     142  7517
                 final String thisPart = this.versionParts.get(i);
     143  7517
                 final String otherPart = other.versionParts.get(i);
     144  7517
                 if (!thisPart.equals(otherPart)) {
     145  3524
                     return false;
     146  
                 }
     147  
             }
     148  387
             if (this.versionParts.size() > max) {
     149  42
                 for (int i = max; i < this.versionParts.size(); i++) {
     150  42
                     if (!"0".equals(this.versionParts.get(i))) {
     151  42
                         return false;
     152  
                     }
     153  
                 }
     154  
             }
     155  
     
     156  345
             if (other.versionParts.size() > max) {
     157  201
                 for (int i = max; i < other.versionParts.size(); i++) {
     158  201
                     if (!"0".equals(other.versionParts.get(i))) {
     159  201
                         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  144
             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  3
             int hash = 5;
     180  3
             hash = 71 * hash + (this.versionParts != null ? this.versionParts.hashCode() : 0);
     181  3
             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  2472
             if (version == null) {
     194  0
                 return false;
     195  
             }
     196  
     
     197  2472
             boolean ret = true;
     198  2472
             int max = (this.versionParts.size() < version.versionParts.size())
     199  
                     ? this.versionParts.size() : version.versionParts.size();
     200  
     
     201  2472
             if (max > 3) {
     202  6
                 max = 3;
     203  
             }
     204  
     
     205  4779
             for (int i = 0; i < max; i++) {
     206  4578
                 if (this.versionParts.get(i) == null || !this.versionParts.get(i).equals(version.versionParts.get(i))) {
     207  2271
                     ret = false;
     208  2271
                     break;
     209  
                 }
     210  
             }
     211  
     
     212  2472
             return ret;
     213  
         }
     214  
     
     215  
         @Override
     216  
         public int compareTo(DependencyVersion version) {
     217  66
             if (version == null) {
     218  0
                 return 1;
     219  
             }
     220  66
             final List<String> left = this.getVersionParts();
     221  66
             final List<String> right = version.getVersionParts();
     222  66
             final int max = left.size() < right.size() ? left.size() : right.size();
     223  
     
     224  138
             for (int i = 0; i < max; i++) {
     225  117
                 final String lStr = left.get(i);
     226  117
                 final String rStr = right.get(i);
     227  117
                 if (lStr.equals(rStr)) {
     228  72
                     continue;
     229  
                 }
     230  
                 try {
     231  45
                     final int l = Integer.parseInt(lStr);
     232  42
                     final int r = Integer.parseInt(rStr);
     233  27
                     if (l < r) {
     234  9
                         return -1;
     235  18
                     } else if (l > r) {
     236  18
                         return 1;
     237  
                     }
     238  18
                 } catch (NumberFormatException ex) {
     239  18
                     final int comp = left.get(i).compareTo(right.get(i));
     240  18
                     if (comp < 0) {
     241  0
                         return -1;
     242  18
                     } else if (comp > 0) {
     243  18
                         return 1;
     244  
                     }
     245  0
                 }
     246  
             }
     247  21
             if (left.size() < right.size()) {
     248  9
                 return -1;
     249  12
             } else if (left.size() > right.size()) {
     250  9
                 return 1;
     251  
             } else {
     252  3
                 return 0;
     253  
             }
     254  
         }
     255  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DependencyVersionUtil.html new file mode 100644 index 000000000..d34b5d88e --- /dev/null +++ b/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  3
         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  3
         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  4104
             if (text == null) {
     62  18
                 return null;
     63  
             }
     64  
             //'-' is a special case used within the CVE entries, just include it as the version.
     65  4086
             if ("-".equals(text)) {
     66  3
                 final DependencyVersion dv = new DependencyVersion();
     67  3
                 final ArrayList<String> list = new ArrayList<String>();
     68  3
                 list.add(text);
     69  3
                 dv.setVersionParts(list);
     70  3
                 return dv;
     71  
             }
     72  4083
             String version = null;
     73  4083
             Matcher matcher = RX_VERSION.matcher(text);
     74  4083
             if (matcher.find()) {
     75  4020
                 version = matcher.group();
     76  
             }
     77  
             //throw away the results if there are two things that look like version numbers
     78  4083
             if (matcher.find()) {
     79  6
                 return null;
     80  
             }
     81  4077
             if (version == null) {
     82  63
                 matcher = RX_SINGLE_VERSION.matcher(text);
     83  63
                 if (matcher.find()) {
     84  54
                     version = matcher.group();
     85  
                 } else {
     86  9
                     return null;
     87  
                 }
     88  
                 //throw away the results if there are two things that look like version numbers
     89  54
                 if (matcher.find()) {
     90  3
                     return null;
     91  
                 }
     92  
             }
     93  4065
             return new DependencyVersion(version);
     94  
         }
     95  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.DownloadFailedException.html new file mode 100644 index 000000000..7a344cdad --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html new file mode 100644 index 000000000..1379aca9a --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Downloader.html @@ -0,0 +1,406 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Downloader
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Downloader
    0%
    0/84
    0%
    0/24
    4.143
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     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.HttpURLConnection;
     27  
     import java.net.InetSocketAddress;
     28  
     import java.net.Proxy;
     29  
     import java.net.SocketAddress;
     30  
     import java.net.URL;
     31  
     import java.util.logging.Level;
     32  
     import java.util.logging.Logger;
     33  
     import java.util.zip.GZIPInputStream;
     34  
     import java.util.zip.InflaterInputStream;
     35  
     
     36  
     /**
     37  
      * A utility to download files from the Internet.
     38  
      *
     39  
      * @author Jeremy Long (jeremy.long@owasp.org)
     40  
      */
     41  
     public final class Downloader {
     42  
     
     43  
         /**
     44  
          * Private constructor for utility class.
     45  
          */
     46  0
         private Downloader() {
     47  0
         }
     48  
     
     49  
         /**
     50  
          * Retrieves a file from a given URL and saves it to the outputPath.
     51  
          *
     52  
          * @param url the URL of the file to download.
     53  
          * @param outputPath the path to the save the file to.
     54  
          * @throws DownloadFailedException is thrown if there is an error
     55  
          * downloading the file.
     56  
          */
     57  
         public static void fetchFile(URL url, String outputPath) throws DownloadFailedException {
     58  0
             fetchFile(url, outputPath, false);
     59  0
         }
     60  
     
     61  
         /**
     62  
          * Retrieves a file from a given URL and saves it to the outputPath.
     63  
          *
     64  
          * @param url the URL of the file to download.
     65  
          * @param outputPath the path to the save the file to.
     66  
          * @param unzip true/false indicating that the file being retrieved is
     67  
          * gzipped and if true, should be uncompressed before writing to the file.
     68  
          * @throws DownloadFailedException is thrown if there is an error
     69  
          * downloading the file.
     70  
          */
     71  
         public static void fetchFile(URL url, String outputPath, boolean unzip) throws DownloadFailedException {
     72  0
             final File f = new File(outputPath);
     73  0
             fetchFile(url, f, unzip);
     74  0
         }
     75  
     
     76  
         /**
     77  
          * Retrieves a file from a given URL and saves it to the outputPath.
     78  
          *
     79  
          * @param url the URL of the file to download.
     80  
          * @param outputPath the path to the save the file to.
     81  
          * @throws DownloadFailedException is thrown if there is an error
     82  
          * downloading the file.
     83  
          */
     84  
         public static void fetchFile(URL url, File outputPath) throws DownloadFailedException {
     85  0
             fetchFile(url, outputPath, false);
     86  0
         }
     87  
     
     88  
         /**
     89  
          * Retrieves a file from a given URL and saves it to the outputPath.
     90  
          *
     91  
          * @param url the URL of the file to download.
     92  
          * @param outputPath the path to the save the file to.
     93  
          * @param unzip true/false indicating that the file being retrieved is
     94  
          * gzipped and if true, should be uncompressed before writing to the file.
     95  
          * @throws DownloadFailedException is thrown if there is an error
     96  
          * downloading the file.
     97  
          */
     98  
         public static void fetchFile(URL url, File outputPath, boolean unzip) throws DownloadFailedException {
     99  0
             HttpURLConnection conn = null;
     100  
             try {
     101  0
                 conn = Downloader.getConnection(url);
     102  0
                 conn.setRequestProperty("Accept-Encoding", "gzip, deflate");
     103  0
                 conn.connect();
     104  0
             } catch (IOException ex) {
     105  
                 try {
     106  0
                     if (conn != null) {
     107  0
                         conn.disconnect();
     108  
                     }
     109  
                 } finally {
     110  0
                     conn = null;
     111  0
                 }
     112  0
                 throw new DownloadFailedException("Error downloading file.", ex);
     113  0
             }
     114  0
             final String encoding = conn.getContentEncoding();
     115  
     
     116  0
             BufferedOutputStream writer = null;
     117  0
             InputStream reader = null;
     118  
             try {
     119  0
                 if (unzip || (encoding != null && "gzip".equalsIgnoreCase(encoding))) {
     120  0
                     reader = new GZIPInputStream(conn.getInputStream());
     121  0
                 } else if (encoding != null && "deflate".equalsIgnoreCase(encoding)) {
     122  0
                     reader = new InflaterInputStream(conn.getInputStream());
     123  
                 } else {
     124  0
                     reader = conn.getInputStream();
     125  
                 }
     126  
     
     127  0
                 writer = new BufferedOutputStream(new FileOutputStream(outputPath));
     128  0
                 final byte[] buffer = new byte[4096];
     129  
                 int bytesRead;
     130  0
                 while ((bytesRead = reader.read(buffer)) > 0) {
     131  0
                     writer.write(buffer, 0, bytesRead);
     132  
                 }
     133  0
             } catch (Exception ex) {
     134  0
                 throw new DownloadFailedException("Error saving downloaded file.", ex);
     135  
             } finally {
     136  0
                 if (writer != null) {
     137  
                     try {
     138  0
                         writer.close();
     139  0
                         writer = null;
     140  0
                     } catch (Exception ex) {
     141  0
                         Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
     142  
                                 "Error closing the writer in Downloader.", ex);
     143  0
                     }
     144  
                 }
     145  0
                 if (reader != null) {
     146  
                     try {
     147  0
                         reader.close();
     148  0
                         reader = null;
     149  0
                     } catch (Exception ex) {
     150  
     
     151  0
                         Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
     152  
                                 "Error closing the reader in Downloader.", ex);
     153  0
                     }
     154  
                 }
     155  
                 try {
     156  0
                     conn.disconnect();
     157  
                 } finally {
     158  0
                     conn = null;
     159  0
                 }
     160  0
             }
     161  0
         }
     162  
     
     163  
         /**
     164  
          * Makes an HTTP Head request to retrieve the last modified date of the
     165  
          * given URL.
     166  
          *
     167  
          * @param url the URL to retrieve the timestamp from
     168  
          * @return an epoch timestamp
     169  
          * @throws DownloadFailedException is thrown if an exception occurs making
     170  
          * the HTTP request
     171  
          */
     172  
         public static long getLastModified(URL url) throws DownloadFailedException {
     173  0
             HttpURLConnection conn = null;
     174  0
             long timestamp = 0;
     175  
             try {
     176  0
                 conn = Downloader.getConnection(url);
     177  0
                 conn.setRequestMethod("HEAD");
     178  0
                 conn.connect();
     179  0
                 timestamp = conn.getLastModified();
     180  0
             } catch (Exception ex) {
     181  0
                 throw new DownloadFailedException("Error making HTTP HEAD request.", ex);
     182  
             } finally {
     183  0
                 if (conn != null) {
     184  
                     try {
     185  0
                         conn.disconnect();
     186  
                     } finally {
     187  0
                         conn = null;
     188  0
                     }
     189  
                 }
     190  
             }
     191  0
             return timestamp;
     192  
         }
     193  
     
     194  
         /**
     195  
          * Utility method to get an HttpURLConnection. If the app is configured to
     196  
          * use a proxy this method will retrieve the proxy settings and use them
     197  
          * when setting up the connection.
     198  
          *
     199  
          * @param url the url to connect to
     200  
          * @return an HttpURLConnection
     201  
          * @throws DownloadFailedException thrown if there is an exception
     202  
          */
     203  
         private static HttpURLConnection getConnection(URL url) throws DownloadFailedException {
     204  0
             HttpURLConnection conn = null;
     205  0
             Proxy proxy = null;
     206  0
             final String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL);
     207  
             try {
     208  0
                 if (proxyUrl != null) {
     209  0
                     final int proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT);
     210  0
                     final SocketAddress addr = new InetSocketAddress(proxyUrl, proxyPort);
     211  0
                     proxy = new Proxy(Proxy.Type.HTTP, addr);
     212  0
                     conn = (HttpURLConnection) url.openConnection(proxy);
     213  0
                 } else {
     214  0
                     conn = (HttpURLConnection) url.openConnection();
     215  
                 }
     216  
                 //added a default timeout of 20000
     217  
                 //if (Settings.getString(Settings.KEYS.CONNECTION_TIMEOUT) != null) {
     218  0
                 final int timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000);
     219  0
                 conn.setConnectTimeout(timeout);
     220  
                 //}
     221  0
             } catch (IOException ex) {
     222  0
                 if (conn != null) {
     223  
                     try {
     224  0
                         conn.disconnect();
     225  
                     } finally {
     226  0
                         conn = null;
     227  0
                     }
     228  
                 }
     229  0
                 throw new DownloadFailedException("Error getting connection.", ex);
     230  0
             }
     231  0
             return conn;
     232  
         }
     233  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html new file mode 100644 index 000000000..a0a175c66 --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.FileUtils.html @@ -0,0 +1,236 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.FileUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    FileUtils
    36%
    8/22
    33%
    4/12
    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.utils;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.FileNotFoundException;
     23  
     import java.io.IOException;
     24  
     import java.io.UnsupportedEncodingException;
     25  
     import java.net.URLDecoder;
     26  
     
     27  
     /**
     28  
      * A collection of utilities for processing information about files.
     29  
      *
     30  
      * @author Jeremy Long (jeremy.long@owasp.org)
     31  
      */
     32  
     public final class FileUtils {
     33  
     
     34  
         /**
     35  
          * Private constructor for a utility class.
     36  
          */
     37  0
         private FileUtils() {
     38  0
         }
     39  
     
     40  
         /**
     41  
          * Returns the (lowercase) file extension for a specified file.
     42  
          *
     43  
          * @param fileName the file name to retrieve the file extension from.
     44  
          * @return the file extension.
     45  
          */
     46  
         public static String getFileExtension(String fileName) {
     47  18102
             String ret = null;
     48  18102
             final int pos = fileName.lastIndexOf(".");
     49  18102
             if (pos >= 0) {
     50  17871
                 ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();
     51  
             }
     52  18102
             return ret;
     53  
         }
     54  
     
     55  
         /**
     56  
          * Deletes a file. If the File is a directory it will recursively delete the
     57  
          * contents.
     58  
          *
     59  
          * @param file the File to delete
     60  
          * @throws IOException is thrown if the file could not be deleted
     61  
          */
     62  
         public static void delete(File file) throws IOException {
     63  3
             if (file.isDirectory()) {
     64  0
                 for (File c : file.listFiles()) {
     65  0
                     delete(c);
     66  
                 }
     67  
             }
     68  3
             if (!file.delete()) {
     69  0
                 throw new FileNotFoundException("Failed to delete file: " + file);
     70  
             }
     71  3
         }
     72  
     
     73  
         /**
     74  
          * Returns the data directory. If a path was specified in
     75  
          * dependencycheck.properties or was specified using the Settings object,
     76  
          * and the path exists, that path will be returned as a File object. If it
     77  
          * does not exist, then a File object will be created based on the file
     78  
          * location of the JAR containing the specified class.
     79  
          *
     80  
          * @param configuredFilePath the configured relative or absolute path
     81  
          * @param clazz the class whos path will be resolved
     82  
          * @return a File object
     83  
          * @throws IOException is thrown if the path could not be decoded
     84  
          * @deprecated This method should no longer be used. See the implementation
     85  
          * in dependency-check-cli/App.java to see how the data directory should be
     86  
          * set.
     87  
          */
     88  
         @java.lang.Deprecated
     89  
         public static File getDataDirectory(String configuredFilePath, Class clazz) throws IOException {
     90  0
             final File file = new File(configuredFilePath);
     91  0
             if (file.isDirectory() && file.canWrite()) {
     92  0
                 return new File(file.getCanonicalPath());
     93  
             } else {
     94  0
                 final File exePath = getPathToJar(clazz);
     95  0
                 return new File(exePath, configuredFilePath);
     96  
             }
     97  
         }
     98  
     
     99  
         /**
     100  
          * Retrieves the physical path to the parent directory containing the
     101  
          * provided class. For example, if a JAR file contained a class
     102  
          * org.something.clazz this method would return the parent directory of the
     103  
          * JAR file.
     104  
          *
     105  
          * @param clazz the class to determine the parent directory of
     106  
          * @return the parent directory of the file containing the specified class.
     107  
          * @throws UnsupportedEncodingException thrown if UTF-8 is not supported.
     108  
          * @deprecated this should no longer be used.
     109  
          */
     110  
         @java.lang.Deprecated
     111  
         public static File getPathToJar(Class clazz) throws UnsupportedEncodingException {
     112  0
             final String filePath = clazz.getProtectionDomain().getCodeSource().getLocation().getPath();
     113  0
             final String decodedPath = URLDecoder.decode(filePath, "UTF-8");
     114  0
             final File jarPath = new File(decodedPath);
     115  0
             return jarPath.getParentFile();
     116  
         }
     117  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Filter.html new file mode 100644 index 000000000..32aab8cc9 --- /dev/null +++ b/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  18
     public abstract class Filter<T> {
     16  
     
     17  
         public abstract boolean passes(T object);
     18  
     
     19  
         public Iterator<T> filter(Iterator<T> iterator) {
     20  1275
             return new FilterIterator(iterator);
     21  
         }
     22  
     
     23  
         public Iterable<T> filter(final Iterable<T> iterable) {
     24  1275
             return new Iterable<T>() {
     25  
     
     26  
                 public Iterator<T> iterator() {
     27  1275
                     return filter(iterable.iterator());
     28  
                 }
     29  
             };
     30  
         }
     31  
     
     32  18
         private class FilterIterator implements Iterator<T> {
     33  
     
     34  
             private final Iterator<T> iterator;
     35  
             private T next;
     36  
     
     37  1275
             private FilterIterator(Iterator<T> iterator) {
     38  1275
                 this.iterator = iterator;
     39  1275
                 toNext();
     40  1275
             }
     41  
     
     42  
             public boolean hasNext() {
     43  5766
                 return next != null;
     44  
             }
     45  
     
     46  
             public T next() {
     47  4875
                 if (next == null) {
     48  0
                     throw new NoSuchElementException();
     49  
                 }
     50  4875
                 T returnValue = next;
     51  4875
                 toNext();
     52  4875
                 return returnValue;
     53  
             }
     54  
     
     55  
             public void remove() {
     56  0
                 throw new UnsupportedOperationException();
     57  
             }
     58  
     
     59  
             private void toNext() {
     60  6150
                 next = null;
     61  10092
                 while (iterator.hasNext()) {
     62  9186
                     T item = iterator.next();
     63  9186
                     if (item != null && passes(item)) {
     64  5244
                         next = item;
     65  5244
                         break;
     66  
                     }
     67  3942
                 }
     68  6150
             }
     69  
         }
     70  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.InvalidSettingException.html new file mode 100644 index 000000000..e992dbbe9 --- /dev/null +++ b/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/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.NonClosingStream.html new file mode 100644 index 000000000..5394d4fa1 --- /dev/null +++ b/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  12
             super(in);
     40  12
         }
     41  
     
     42  
         /**
     43  
          * Prevents closing of the stream.
     44  
          */
     45  
         @Override
     46  
         public void close() {
     47  
             // don't close the stream.
     48  12
         }
     49  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html new file mode 100644 index 000000000..bf1593cdf --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.Settings.html @@ -0,0 +1,777 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.Settings
    +
     
    + + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    Settings
    63%
    48/76
    41%
    5/12
    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 properties key for the path where the CPE Lucene Index will be
     72  
              * stored.
     73  
              */
     74  
             public static final String CPE_DATA_DIRECTORY = "data.cpe";
     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 the CPE.
     82  
              */
     83  
             public static final String CPE_URL = "cpe.url";
     84  
             /**
     85  
              * The properties key for the URL to the CPE.
     86  
              */
     87  
             public static final String CPE_META_URL = "cpe.meta.url";
     88  
             /**
     89  
              * The properties key for the URL to retrieve the "meta" data from about
     90  
              * the CVE entries.
     91  
              */
     92  
             public static final String CVE_META_URL = "cve.url.meta";
     93  
             /**
     94  
              * The properties key for the URL to retrieve the recently modified and
     95  
              * added CVE entries (last 8 days) using the 2.0 schema.
     96  
              */
     97  
             public static final String CVE_MODIFIED_20_URL = "cve.url-2.0.modified";
     98  
             /**
     99  
              * The properties key for the URL to retrieve the recently modified and
     100  
              * added CVE entries (last 8 days) using the 1.2 schema.
     101  
              */
     102  
             public static final String CVE_MODIFIED_12_URL = "cve.url-1.2.modified";
     103  
             /**
     104  
              * The properties key for the URL to retrieve the recently modified and
     105  
              * added CVE entries (last 8 days).
     106  
              */
     107  
             public static final String CVE_MODIFIED_VALID_FOR_DAYS = "cve.url.modified.validfordays";
     108  
             /**
     109  
              * The properties key for the telling us how many cvr.url.* URLs exists.
     110  
              * This is used in combination with CVE_BASE_URL to be able to retrieve
     111  
              * the URLs for all of the files that make up the NVD CVE listing.
     112  
              */
     113  
             public static final String CVE_START_YEAR = "cve.startyear";
     114  
             /**
     115  
              * The properties key for the CVE schema version 1.2.
     116  
              */
     117  
             public static final String CVE_SCHEMA_1_2 = "cve.url-1.2.base";
     118  
             /**
     119  
              * The properties key for the CVE schema version 2.0.
     120  
              */
     121  
             public static final String CVE_SCHEMA_2_0 = "cve.url-2.0.base";
     122  
             /**
     123  
              * The properties key for the proxy url.
     124  
              */
     125  
             public static final String PROXY_URL = "proxy.url";
     126  
             /**
     127  
              * The properties key for the proxy port - this must be an integer
     128  
              * value.
     129  
              */
     130  
             public static final String PROXY_PORT = "proxy.port";
     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  
         /**
     141  
          * The properties file location.
     142  
          */
     143  
         private static final String PROPERTIES_FILE = "dependencycheck.properties";
     144  
         /**
     145  
          * The singleton instance variable.
     146  
          */
     147  3
         private static final Settings INSTANCE = new Settings();
     148  
         /**
     149  
          * The properties.
     150  
          */
     151  3
         private Properties props = null;
     152  
     
     153  
         /**
     154  
          * Private constructor for the Settings class. This class loads the
     155  
          * properties files.
     156  
          */
     157  3
         private Settings() {
     158  3
             InputStream in = null;
     159  3
             props = new Properties();
     160  
             try {
     161  3
                 in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
     162  3
                 props.load(in);
     163  0
             } catch (IOException ex) {
     164  0
                 Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings.");
     165  0
                 Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex);
     166  
             } finally {
     167  3
                 if (in != null) {
     168  
                     try {
     169  3
                         in.close();
     170  0
                     } catch (IOException ex) {
     171  0
                         Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
     172  3
                     }
     173  
                 }
     174  
             }
     175  3
         }
     176  
     
     177  
         /**
     178  
          * Sets a property value.
     179  
          *
     180  
          * @param key the key for the property
     181  
          * @param value the value for the property
     182  
          */
     183  
         public static void setString(String key, String value) {
     184  12
             INSTANCE.props.setProperty(key, value);
     185  12
         }
     186  
     
     187  
         /**
     188  
          * Sets a property value.
     189  
          *
     190  
          * @param key the key for the property
     191  
          * @param value the value for the property
     192  
          */
     193  
         public static void setBoolean(String key, boolean value) {
     194  3
             if (value) {
     195  0
                 INSTANCE.props.setProperty(key, Boolean.TRUE.toString());
     196  
             } else {
     197  3
                 INSTANCE.props.setProperty(key, Boolean.FALSE.toString());
     198  
             }
     199  3
         }
     200  
     
     201  
         /**
     202  
          * Merges a new properties file into the current properties. This method
     203  
          * allows for the loading of a user provided properties file.<br/><br/>
     204  
          * Note: even if using this method - system properties will be loaded before
     205  
          * properties loaded from files.
     206  
          *
     207  
          * @param filePath the path to the properties file to merge.
     208  
          * @throws FileNotFoundException is thrown when the filePath points to a
     209  
          * non-existent file
     210  
          * @throws IOException is thrown when there is an exception loading/merging
     211  
          * the properties
     212  
          */
     213  
         public static void mergeProperties(String filePath) throws FileNotFoundException, IOException {
     214  3
             final FileInputStream fis = new FileInputStream(filePath);
     215  3
             mergeProperties(fis);
     216  3
         }
     217  
     
     218  
         /**
     219  
          * Merges a new properties file into the current properties. This method
     220  
          * allows for the loading of a user provided properties file.<br/><br/>
     221  
          * Note: even if using this method - system properties will be loaded before
     222  
          * properties loaded from files.
     223  
          *
     224  
          * @param stream an Input Stream pointing at a properties file to merge
     225  
          * @throws IOException is thrown when there is an exception loading/merging
     226  
          * the properties
     227  
          */
     228  
         public static void mergeProperties(InputStream stream) throws IOException {
     229  3
             INSTANCE.props.load(stream);
     230  3
         }
     231  
     
     232  
         /**
     233  
          * Returns a value from the properties file as a File object. If the value
     234  
          * was specified as a system property or passed in via the -Dprop=value
     235  
          * argument - this method will return the value from the system properties
     236  
          * before the values in the contained configuration file.
     237  
          *
     238  
          * @param key the key to lookup within the properties file
     239  
          * @param defaultValue the default value for the requested property
     240  
          * @return the property from the properties file as a File object
     241  
          */
     242  
         public static File getFile(String key, String defaultValue) {
     243  3
             final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
     244  3
             final String str = getString(key, defaultValue);
     245  3
             if (baseDir != null) {
     246  3
                 return new File(baseDir, str);
     247  
             }
     248  0
             return new File(str);
     249  
         }
     250  
     
     251  
         /**
     252  
          * Returns a value from the properties file as a File object. If the value
     253  
          * was specified as a system property or passed in via the -Dprop=value
     254  
          * argument - this method will return the value from the system properties
     255  
          * before the values in the contained configuration file.
     256  
          *
     257  
          * This method will also replace a leading "[JAR]\" sequence with the path
     258  
          * to the folder containing the JAR file containing this class.
     259  
          *
     260  
          * @param key the key to lookup within the properties file
     261  
          * @return the property from the properties file converted to a File object
     262  
          * @throws IOException thrown if the file path to the JAR cannot be found
     263  
          */
     264  
         public static File getFile(String key) throws IOException {
     265  66
             final String file = getString(key);
     266  66
             final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
     267  66
             if (baseDir != null) {
     268  66
                 if (baseDir.startsWith("[JAR]/")) {
     269  0
                     final File jarPath = getJarPath();
     270  0
                     final File newBase = new File(jarPath.getCanonicalPath(), baseDir.substring(6));
     271  0
                     return new File(newBase, file);
     272  
                 }
     273  66
                 return new File(baseDir, file);
     274  
             }
     275  0
             return new File(file);
     276  
         }
     277  
     
     278  
         /**
     279  
          * Attempts to retrieve the folder containing the Jar file containing the
     280  
          * Settings class.
     281  
          *
     282  
          * @return a File object
     283  
          */
     284  
         private static File getJarPath() {
     285  0
             final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath();
     286  0
             String decodedPath = ".";
     287  
             try {
     288  0
                 decodedPath = URLDecoder.decode(jarPath, "UTF-8");
     289  0
             } catch (UnsupportedEncodingException ex) {
     290  0
                 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
     291  0
             }
     292  
     
     293  0
             final File path = new File(decodedPath);
     294  0
             if (path.getName().toLowerCase().endsWith(".jar")) {
     295  0
                 return path.getParentFile();
     296  
             } else {
     297  0
                 return new File(".");
     298  
             }
     299  
         }
     300  
     
     301  
         /**
     302  
          * Returns a value from the properties file. If the value was specified as a
     303  
          * system property or passed in via the -Dprop=value argument - this method
     304  
          * will return the value from the system properties before the values in the
     305  
          * contained configuration file.
     306  
          *
     307  
          * @param key the key to lookup within the properties file
     308  
          * @param defaultValue the default value for the requested property
     309  
          * @return the property from the properties file
     310  
          */
     311  
         public static String getString(String key, String defaultValue) {
     312  12
             final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));
     313  12
             return str;
     314  
         }
     315  
     
     316  
         /**
     317  
          * Returns a value from the properties file. If the value was specified as a
     318  
          * system property or passed in via the -Dprop=value argument - this method
     319  
          * will return the value from the system properties before the values in the
     320  
          * contained configuration file.
     321  
          *
     322  
          * @param key the key to lookup within the properties file
     323  
          * @return the property from the properties file
     324  
          */
     325  
         public static String getString(String key) {
     326  246
             return System.getProperty(key, INSTANCE.props.getProperty(key));
     327  
         }
     328  
     
     329  
         /**
     330  
          * Returns an int value from the properties file. If the value was specified
     331  
          * as a system property or passed in via the -Dprop=value argument - this
     332  
          * method will return the value from the system properties before the values
     333  
          * in the contained configuration file.
     334  
          *
     335  
          * @param key the key to lookup within the properties file
     336  
          * @return the property from the properties file
     337  
          * @throws InvalidSettingException is thrown if there is an error retrieving
     338  
          * the setting
     339  
          */
     340  
         public static int getInt(String key) throws InvalidSettingException {
     341  
             int value;
     342  
             try {
     343  3
                 value = Integer.parseInt(Settings.getString(key));
     344  0
             } catch (NumberFormatException ex) {
     345  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     346  3
             }
     347  3
             return value;
     348  
         }
     349  
     
     350  
         /**
     351  
          * Returns an int value from the properties file. If the value was specified
     352  
          * as a system property or passed in via the -Dprop=value argument - this
     353  
          * method will return the value from the system properties before the values
     354  
          * in the contained configuration file.
     355  
          *
     356  
          * @param key the key to lookup within the properties file
     357  
          * @param defaultValue the default value to return
     358  
          * @return the property from the properties file or the defaultValue if the
     359  
          * property does not exist or cannot be converted to an integer
     360  
          */
     361  
         public static int getInt(String key, int defaultValue) {
     362  
             int value;
     363  
             try {
     364  3
                 value = Integer.parseInt(Settings.getString(key));
     365  3
             } catch (NumberFormatException ex) {
     366  3
                 final String msg = String.format("Could not convert property '%s' to an int.", key);
     367  3
                 Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex);
     368  3
                 value = defaultValue;
     369  0
             }
     370  3
             return value;
     371  
         }
     372  
     
     373  
         /**
     374  
          * Returns a long value from the properties file. If the value was specified
     375  
          * as a system property or passed in via the -Dprop=value argument - this
     376  
          * method will return the value from the system properties before the values
     377  
          * in the contained configuration file.
     378  
          *
     379  
          * @param key the key to lookup within the properties file
     380  
          * @return the property from the properties file
     381  
          * @throws InvalidSettingException is thrown if there is an error retrieving
     382  
          * the setting
     383  
          */
     384  
         public static long getLong(String key) throws InvalidSettingException {
     385  
             long value;
     386  
             try {
     387  3
                 value = Long.parseLong(Settings.getString(key));
     388  0
             } catch (NumberFormatException ex) {
     389  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     390  3
             }
     391  3
             return value;
     392  
         }
     393  
     
     394  
         /**
     395  
          * Returns a boolean value from the properties file. If the value was
     396  
          * specified as a system property or passed in via the
     397  
          * <code>-Dprop=value</code> argument this method will return the value from
     398  
          * the system properties before the values in the contained configuration
     399  
          * file.
     400  
          *
     401  
          * @param key the key to lookup within the properties file
     402  
          * @return the property from the properties file
     403  
          * @throws InvalidSettingException is thrown if there is an error retrieving
     404  
          * the setting
     405  
          */
     406  
         public static boolean getBoolean(String key) throws InvalidSettingException {
     407  
             boolean value;
     408  
             try {
     409  6
                 value = Boolean.parseBoolean(Settings.getString(key));
     410  0
             } catch (NumberFormatException ex) {
     411  0
                 throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
     412  6
             }
     413  6
             return value;
     414  
         }
     415  
     }
    + + + + diff --git a/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html new file mode 100644 index 000000000..c325148dd --- /dev/null +++ b/dependency-check-core/cobertura/org.owasp.dependencycheck.utils.UrlStringUtils.html @@ -0,0 +1,210 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.utils.UrlStringUtils
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    UrlStringUtils
    81%
    18/22
    66%
    8/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.List;
     25  
     import java.util.regex.Pattern;
     26  
     
     27  
     /**
     28  
      *
     29  
      * @author Jeremy Long (jeremy.long@owasp.org)
     30  
      */
     31  
     public final class UrlStringUtils {
     32  
     
     33  
         /**
     34  
          * Private constructor for a utility class.
     35  
          */
     36  0
         private UrlStringUtils() {
     37  0
         }
     38  
         /**
     39  
          * A regular expression to test if a string contains a URL.
     40  
          */
     41  3
         private static final Pattern CONTAINS_URL_TEST = Pattern.compile("^.*(ht|f)tps?://.*$", Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
     42  
         /**
     43  
          * A regular expression to test if a string is a URL.
     44  
          */
     45  3
         private static final Pattern IS_URL_TEST = Pattern.compile("^(ht|f)tps?://.*", Pattern.CASE_INSENSITIVE);
     46  
     
     47  
         /**
     48  
          * Tests if the text provided contains a URL. This is somewhat limited
     49  
          * search in that it only looks for (ftp|http|https)://
     50  
          *
     51  
          * @param text the text to search
     52  
          * @return true if the text contains a url, otherwise false
     53  
          */
     54  
         public static boolean containsUrl(String text) {
     55  59997
             return CONTAINS_URL_TEST.matcher(text).matches();
     56  
         }
     57  
     
     58  
         /**
     59  
          * Tests if the given text is url.
     60  
          *
     61  
          * @param text the string to test
     62  
          * @return returns true if the text is a url, otherwise false
     63  
          */
     64  
         public static boolean isUrl(String text) {
     65  54
             return IS_URL_TEST.matcher(text).matches();
     66  
         }
     67  
     
     68  
         /**
     69  
          * <p>Takes a URL, in String format, and adds the important parts of the URL
     70  
          * to a list of strings.</p>
     71  
          * <p>Example, given the following input:</p>
     72  
          * <code>"https://www.somedomain.com/path1/path2/file.php?id=439"</code>
     73  
          * <p>The function would return:</p>
     74  
          * <code>{"somedomain", "path1", "path2", "file"}</code>
     75  
          *
     76  
          * @param text a URL
     77  
          * @return importantParts a list of the important parts of the URL
     78  
          * @throws MalformedURLException thrown if the URL is malformed
     79  
          */
     80  
         public static List<String> extractImportantUrlData(String text) throws MalformedURLException {
     81  54
             final ArrayList<String> importantParts = new ArrayList<String>();
     82  54
             final URL url = new URL(text);
     83  54
             final String[] domain = url.getHost().split("\\.");
     84  
             //add the domain except www and the tld.
     85  159
             for (int i = 0; i < domain.length - 1; i++) {
     86  105
                 final String sub = domain[i];
     87  105
                 if (!"www".equalsIgnoreCase(sub)) {
     88  96
                     importantParts.add(sub);
     89  
                 }
     90  
             }
     91  54
             final String document = url.getPath();
     92  54
             final String[] pathParts = document.split("[\\//]");
     93  54
             for (int i = 0; i < pathParts.length - 2; i++) {
     94  0
                 if (!pathParts[i].isEmpty()) {
     95  0
                     importantParts.add(pathParts[i]);
     96  
                 }
     97  
             }
     98  54
             if (pathParts.length > 0 && !pathParts[pathParts.length - 1].isEmpty()) {
     99  45
                 final String fileNameNoExt = pathParts[pathParts.length - 1].replaceAll("\\..*{0,5}$", "");
     100  45
                 importantParts.add(fileNameNoExt);
     101  
             }
     102  54
             return importantParts;
     103  
         }
     104  
     }
    + + + + diff --git a/dependency-check-core/cpd.html b/dependency-check-core/cpd.html new file mode 100644 index 000000000..b88e46fe7 --- /dev/null +++ b/dependency-check-core/cpd.html @@ -0,0 +1,264 @@ + + + + + + + + + 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

    + + + + + + + + + + +
    FileLine
    org\owasp\dependencycheck\data\lucene\AbstractIndex.java99
    org\owasp\dependencycheck\data\lucene\AbstractIndex.java119
    +
    +
                    indexWriter.commit();
    +            } catch (CorruptIndexException ex) {
    +                final String msg = "Unable to update database, there is a corrupt index.";
    +                Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +                Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +            } catch (IOException ex) {
    +                final String msg = "Unable to update database due to an IO error.";
    +                Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +                Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +            }
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css b/dependency-check-core/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/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/dependency-check-core/css/print.css b/dependency-check-core/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/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/dependency-check-core/css/site.css b/dependency-check-core/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/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/dependency-check-core/dependency-updates-report.html b/dependency-check-core/dependency-updates-report.html new file mode 100644 index 000000000..d6f4f74b9 --- /dev/null +++ b/dependency-check-core/dependency-updates-report.html @@ -0,0 +1,780 @@ + + + + + + + + + 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 available7
    # 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 update1
    # of dependencies where the next version available is a minor version update5
    # 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.1providedjar
    com.h2databaseh21.3.172compilejar1.3.173
    commons-clicommons-cli1.2compilejar
    commons-iocommons-io2.4compilejar
    commons-langcommons-lang2.5compilejar2.6
    junitjunit4.11testjar
    org.apache.lucenelucene-analyzers-common4.3.1compilejar4.4.0
    org.apache.lucenelucene-core4.3.1compilejar4.4.0
    org.apache.lucenelucene-queryparser4.3.1compilejar4.4.0
    org.apache.lucenelucene-test-framework4.3.1testjar4.4.0
    org.apache.velocityvelocity1.7compilejar
    org.apache.velocityvelocity-tools2.0compilejar
    org.jsoupjsoup1.7.2compilejar
    StatusGroup IdArtifact IdCurrent VersionScopeClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

    Dependency Updates

    +

    +
    +

    com.google.code.findbugs:annotations

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idcom.google.code.findbugs
    Artifact Idannotations
    Current Version2.0.1
    Scopeprovided
    Classifier
    Typejar
    +
    +

    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
    +
    +

    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
    +
    +

    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.3.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.4.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.3.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.4.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.3.1
    Scopecompile
    Classifier
    Typejar
    Newer versions4.4.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
    +
    +

    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.jsoup:jsoup

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.jsoup
    Artifact Idjsoup
    Current Version1.7.2
    Scopecompile
    Classifier
    Typejar
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/failsafe-report.html b/dependency-check-core/failsafe-report.html new file mode 100644 index 000000000..7edf0166f --- /dev/null +++ b/dependency-check-core/failsafe-report.html @@ -0,0 +1,443 @@ + + + + + + + + + dependency-check-core - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    6000100%43.435

    +

    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.data.nvdcve.xml1000100%3.123
    org.owasp.dependencycheck1000100%17.671
    org.owasp.dependencycheck.utils2000100%22.638
    org.owasp.dependencycheck.data.cpe2000100%0.003

    +

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

    +
    +

    org.owasp.dependencycheck.data.nvdcve.xml

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DatabaseUpdaterIntegrationTest1000100%3.123
    +
    +

    org.owasp.dependencycheck

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    EngineIntegrationTest1000100%17.671
    +
    +

    org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DownloaderIntegrationTest2000100%22.638
    +
    +

    org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    IndexIntegrationTest2000100%0.003

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    IndexIntegrationTest

    + + + + + + + + +
    testUpdateNeeded0.003
    testUpdate0
    +
    +

    DatabaseUpdaterIntegrationTest

    + + + + +
    testUpdate3.123
    +
    +

    EngineIntegrationTest

    + + + + +
    testScan17.671
    +
    +

    DownloaderIntegrationTest

    + + + + + + + + +
    testGetLastModified0.384
    testFetchFile22.254

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/findbugs.html b/dependency-check-core/findbugs.html new file mode 100644 index 000000000..711db6dd9 --- /dev/null +++ b/dependency-check-core/findbugs.html @@ -0,0 +1,322 @@ + + + + + + + + + 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
    167500
    + +
    +

    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer

    + + + + + + + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    Possible null pointer dereference of currentVersion on branch that might be infeasible in org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer.removeSpuriousCPE(Dependency)STYLENP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE162Medium
    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_INFEASIBLE162Medium
    +
    +

    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.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_VALUE222Medium
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/images/accessories-text-editor.png b/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/dependency-check-core/images/add.gif b/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/dependency-check-core/images/apache-maven-project-2.png b/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/dependency-check-core/images/contact-new.png b/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/dependency-check-core/images/drive-harddisk.png b/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/dependency-check-core/images/icon_error_sml.gif b/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/dependency-check-core/images/icon_help_sml.gif b/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/dependency-check-core/images/icon_info_sml.gif b/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/dependency-check-core/images/icon_warning_sml.gif b/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 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/dependency-check-core/images/logos/build-by-maven-white.png b/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/dependency-check-core/images/logos/maven-feather.png b/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/dependency-check-core/images/network-server.png b/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/dependency-check-core/images/profiles/pre-release.png b/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/dependency-check-core/images/profiles/retired.png b/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/dependency-check-core/images/profiles/sandbox.png b/dependency-check-core/images/profiles/sandbox.png new file mode 100644 index 0000000000000000000000000000000000000000..f88b3626761f591fefcb7408ff290b4f48ebe0d9 GIT binary patch literal 33010 zcmeFYV|Qd-)GnMW3YKVhRGV(B%(Nk3lpLv9v_0*x9}+hfP}^Cd6M z@qvE+vy;v|7Bec=cQvJ<{@Gr8|Qo^Y7^2zXs9canPLPgB~+OYO(p7)9@x8bXMLl$NO=7mV~-#f`-BW|yF^-Z9JRRii#Yv7Cn-Vb)LqAyu2vZrW|`^Q zbQn~Gl%2-vAa+};BSfgE%%k~>f6B?Vc^o|)?Amwx7s_eSXRJf_4|0%-1#?k3f8d?$9;P)pH@ z%0*MqNqaqJCP9FkQAv^gE_d5u7J*$QB2eWc`mjz~-)vkdSY_Fb>nKqz{ml(=nl1H` z${j-sslDo2|LLnOf>Ibxe|pct=+ss<`kz222Eoc)waMXgsyX?&Gt<_d=zGy&+~-7A zF`b-lN`>rb-rF^0L>gF+;IpGWJ?3S&+>VJKyDx3PY9?oj_g&4e{562|jfE!GvJI|E5KvThis^SS zDOc#Bh`x~^#;Al!W6eY*dIX1GNc!nWGBwhxOtt(87f{V=OFxdR3|x5czB--|ybqi) zaes%^$LpPSVZzC0cRPTu_0?xM!(Jy5$ZZKs;$JtZ{$^*?9wVqxx$erOOAOh8TDh1v z{d;lq_#gn$v*-=Bf&yWwzrcVEtT6D7(%LQ%5Qv!nU62r&*|-o8q!2RVBI=%y=YDX8 zRGMxNDp!?Tf2=*a^gZ^2=|HWID9vP$u?jTM0BGr3I2KAWNO>7r_?5&NJKKE(rj^#m z;6L6mEfqE1SBIb7>@HG8Wi-|9nmXUCra9@mxLuBaUPaw?xm?mYVOknbqOm|DL5lUF zX_-Rr;duFHZT;UH%FwZi=cs-EXGuzp#v&RWmC*Oa2#5;^4qbZ#xRgSAzfDHWD7Zjq#pIt;GL%42Vm%y8VA13m29rH4MeVBne^c|6iiO zu@Bh)c^ejJV*n&YamEv_E&Bgbk(7Sm{*M}XiG~T@W@vE4Fy?=$u!z?8{C5cOGAKj1 z7f44f2&)_VKQ9*^h@Sk8{J+Epp#hT8tT(JHEfe#4pH74DOq!kw}+T3J|4Y-k!NzTrqzZn~gsbkA>i3f}LBs%SxIauWD zVtNM$c^Y#)7sH2NUQ2BDB~LteCGg5Cl4j#kqLgHk20I1D_$+gw3{H2U${g`gV^+@ zzNXMuaFl}IeqgY(6`zWcqy}^MXw!a7_~P&fAWBNt-D$7Lf>p`@%wIs1jZhfAeqY2`@WF0N5aX{~ICl*Al@xT^k4tor;!xeJS3}^(j6~cpS&&AjMFB39>2q8_Q04TsuHX zM{hGO>i+i7GKaJmJ@8BQ1rlzweflkjvbeP08%`{VmruUWnsp18j1l&fs|>9D=jZ?< zyHblkUn<@YYl#BNkfmBy0xx^NLwf|?$E*ygLm z)Iw41$1rATYn7xVRgRg5T~3N(KVY+h8CXzUqC?f4GiL@yBJyq5wCn10QV5 zmt6mLbv@St^B)i{e`}|-jX*B7d2%%BxA7j*B*s7g9w-OQPbRDUU_8ObmXz&)Iudx` zM7ARCYb^Lr7E#fGRuUZ3O#;uw92re=;vyyp^YuTwY&fHWgW;f8H(!e zutw>|z0J@ieKGJeI#o!*B9~0Uk;M@bl&jGQaW5`*BZG}&K-s1BXD6OWHQ@E4{%FmH zaXQDJ{Pi;8*ZBj{5?2aY?KTA(S4-T(gDeF=P4}`(N%9Q?9m$cg=UP-|Y+AEQV6PA{ z*hNeW7f2-1EbtL(`?-sHk7Tt-BM4gi)zQMjzFuwwEiZ;pWK@F;W{44*av6;I(nDjm zdp0`f+XvUl_FMQ=y4Q7|Dl9V9<0!>_7Y2_0MHJj-u5ItHON4FkKYVW_6#Ca7<~O6E zP*aP~ZCxB!FqI#7@F$F_9e z?&KK}`&0&W7B(za|KxIPKCce^Vd@n2P9&)bxHGrvyz;N`K0Y)Y4qKdgaK8U@j0x#c%U+g4$#O#z?0V}k!?hRDXXaXQ}YGs7F-1l87)$ZG!rdF(`7ybs17u1LqpCA8?HC$g-mKpX!)SgQUkRx^%~!(QeNgv;X3F{*$b>hXO4TF;H34e&Oq>-w88mDXR<} zbBd~|4z1^zE|nl1yfYp?I%LR+eH*8gY;5K4wp~f8g6PK{C0UierA=LXAN|<(jPOR> z^7ZU+;aG~DP==<$*<50)rvZ|Z!=P8Q#!6i|(SyFUj+l_76Mp}QnevR1| zpf}$j2T=tJXGDgt?~ePS);oWmh~SYBriM<)kMW;~8yQ+U+k-A?H-tKeet{xh85WoA z9TZRnX`47U3##8{;7Wi~gz>dMPq&PXHo@%eFEg}Zf&PLC>D! zqLd6J_#~o`Ca#(gK1xX2QPwp{`Mec&h_=8{QE+& zs2fbZb2u*@ZTCL}~|!8Aeg;jD~H@K{comA5 z9{GIaZy8hOZM1YLXm#^<6^bq&N7`t{*adMlzK0W-7FWt)B-KG;{_R0OXe~NnMq!ox zGaGw|)l=Uvm1>XXEhKAy-udZYtf0fqA9RH<^ZwM0KIi|oyT0^D0^NTw_q^s^(erG6 zA|?aVyb$e7C$g4DzVMaY=mZZQH2oX*<(i(F!ze*ol1ap042L(}vAq)fRNRzeK4sSW7`B#-J|{|MvyTs84GiQDq-ncG z>%Q4~EyjLc8HR)9IM(a?WzlQ3Yb!GqVjgnzGHrK~JDk>BKkno1JK+kx>JF?N zuIIJuKdbfiPflIAjpvii)C8#~U-|oWVaz#md}sPcV-eao16+Ul4~{@gO33u$WY|p$ zF(dQP?cvk@qDUm>2zsYJXfzVE(T97~52(G$y*LKGh z9NI%;k!m#1QT9^m>s{kyNn=IU28NyXek7{|AX%H5Nb_>QD%iGhM|ixPF3O4zT-dRp zkSi+7*S;Pe&(|4}RG`lVi`YOB0A6u}gz1enF43*R8$>8n*O4gbxqGTDi0-NBMzqoY zP}jD(lvwGY=aBT<;pnJg1RI=abF*?CwFTU13k=*utgj`G8=84G9zL$MNDb4_RN5s+ zS)?WY+*ZW#m6DW3M5$9S1TqK!AlnRo>qA>FZ8}%BJKF@(|88cZ_qgF#OnN%N0xBdp z7V#h^hy)%0g377c4zg{62l}TvE{C5L(g$}5X^x*-d07l-qw0I3f0wl|T}jDr>iQ>Z_{0WY8|jEP4~UEizZfXF4*BHqLRLHiNafW1HLCwFC# z>k^J;b&ZJq4!^tYje3Ej>#I=;w?B#@diJjdqwiqsNZHQSOvaK2Y;`#N?I$n2?lLU{ zbvuo0yZXC0vF=isuIsPpSOnKVX>riD;_GZok`Rme2z`w-(cH(s9S^`%7KWjFQ3zm+ z8uD1|tqar2i7(Gb|0~Ed9jj;oFqXJ~M{Gbt!IL@|ikLmyfpWKK>5%~Y=kyoCt4-dh z1Vhr}$4k_)r9oaTGz|NX+CZ{;^*;y;k-z<~49<9UgjeKDZR+afDT=k8DQ$_udl`VC zJ!y~2+|u91#aspNQxSY7u^gv(Rh?g~{59-v`RWr^7*~4EE{>?x#|8_wtV8%DZE&FkQR< zWE{R`%sA#a8h44i5+Bl5u!Kr=*CJsIxVZD7qv29fz{wQ=|VdrB^k<_Hz*rE+S0k6Tm&0U3KcE)ZXeKDENNpbcGpC;zra- z7rnpBN@xG%TTr!*U%`Wz(DS?Z*bI}$q1B0;4pyX?h}L&HDbX3uesz9NpCdN0ss?8= z{#mW)AO)d;LH%BdzWHJIJ=X~&`n9*SQxaB@x6O?V4V?@RTcmX^luCI%bPydCk4CTC zml=AVOP(CkdKVKL`540yOt3=y58(TUo3IHBYRFjW4|qE@ok zDH~{mLGm?MJb27K4OWyeMVy{X^Wl zvBA+`tp^DR`|tYyzyQN7bYQ?A;xIMgeZNPUKYovYXywfpB#f;=R{C#zP^h!Dop=zyssp!r}KNTtfZnrR9OBcl-X0nQ4e#o+oi5_ z$|6r~GANTEE4Qh!d5rAy#%)ZbNgFx)uxrNqZP)lz^C_lRSuSSb{lk5M-y2JiU_Ud7 z{4o?W@H1?lNWj<{N6v*+Qd;iLrQtiX8rUDsz|(|yo9g7##VxB<{w_YBlPkVvbok{; zPmO{O5EOuQP%C%0TP61!75%oNd{u%bE0flEYCRS<<}eflSD$4qW{nSR#VK?HJ>l6h zy0dhV9LSDg%`Ypv=5i~g2iVL_`UPR$=6QU3v3;avLaMHjQ{CUbScQ{m;hc)=B~cBO zQ(=Uw(RGwuhN!lTJW@$Szxf*C#q>EjavGf08tDi9!CIe1)rLe-O!Zv1T9{4%Fv2i$ z4+-zMN?M8_R`swo7abKk#G?E5m@QL)5`;G?aB%w@J#Wiyz2rG5qU7$Eg;}D^_g&Nc zUs$xlH*Zg*&g&wG<5H~MY1g@OQdZ%$uhlK)ZyX<|!h9sseE$V@Rg(o2w8mZMcYddmd&qCF3c>9n}m1q7T`>F%sE` zwVzsqb3nQ;LfE?Vx01c^K0t13l>ZWG3P1rOV-0(>(P(ZmdhW)^Doz`$h}F=h4ylwi z6iZel!|xW*mg264q*jUFsfRO&BmV)Mjb>~@4ZqLhv$@oK9MF^;G^%~4r7X>!x;z&N{bC1n|;SCSB378oaaGx-Z@C0c9V5ygM5x z*a_v?e-O8yn*(nFK*u4j4D2qz(a^;A%Eqh#&uN-Qn&ap|^f|qxdVg?iPm1=%o+E5= zcc$~WB;EDkV9%JYfc|leMqx6ONQBrP&z@m;#P+4;GkJ<8FPXCRfoyk|L?&Dj2B4-6 zm~h{h?jAqL`D$o=Dngj6ipik+G75<+8Q-_CS5ISu3)i!n2)v zG+i_OOx=6!2Z}qxix_SMC<4;1ywgodToc`A{hX%R&-n$WF1y_`ZrYf5Vix+GimvXF z`83&NYt!|F-`-uATFPLwMlL}<0VfWjjXl0|&C?PRq_!IKjqE^>ZTB&;TUO~SXM?jQ zDToSLMrE}>nEkY$j)9E!8989!etF;bSX+jHAM0{NsjAz&kGDQ~2@4;?is>KDOM!220nZ5QmZEFE9j znUq50-AK@m=TWgsThjq9D$kZ_R;GGsF{S>|qOgumm+ zWHrGl4bz9Zyt&)X199HKJS}JoXspA55I)e(MA_RoeewBu!#9_Vo}z*y^Tg4fKWI}` z>S~1#7}k`5Dyd04*NA!P!7bgKe5`!Q{a0~9PeF}+2Wfu={z)gh-iK@IP&=P3Zo8%+ zakuOVcFxb_iSxTTkd}H*m-to{sm*DiC&ZKhWn}SON~R6{6xk6O-QtDIQgu#x zo9$i%8VW1vzdig`B-WyU_dCTu=1Fr~w}EC*8_*ZCgu(^Pf)g?*)Ar#zV@uZ~Lcgzx zLn@+Ws_{C2Do1FXw>R(A9L8SNYet^RjQWaeZJ$&Q8ZBr{e?ZKT$EjZLE`!2br(PW6R~peLEexucp_v; zhIQ}fO1AP6clR^>)!!mcttJ@gvEm9$lhLi6n0NR=jG+()xE(jih>SpmpJToC^kaBVk9KjJLi&467s_Dc1I% zxHWh}%)hckS7k8H#pQp7{5*cD!ZUXhn^v1kXtw*^wJ!@W3$({_QzThVp-0FuVbr!C zzbW?B4E{qB$g2t#Y?W>>P^w8b2Ta;~PG>tz0Q)!us!8WqEp1#Ig%9X}eH7fug`kir z>=}H#RGrs%5?P_C&LzJic719WP|9m|LD&t6aCjJO>s*V_OGd5{Yw!0TCq~2a2%3GH z$Zr-IOH9+4V0F8LE=F$1qu4=o#emqX&PsZXwXz7`r6y9+yevwX3!Iq%YF?JFjS%J& z1~yADMrjiQ*!uAIlGQ?4IR}7|-;V=-HvCYSUAZR<1@g4}Hlu4@kijc^UF0dF4eyS{T2&GjbfhXY3ZB_iccZi%FL zy1lglp5t0C@{h_(A|FyZ!rSL*xq+@nSqee{4v|WOodi=sSd0SghTGqjl*={U_^cPH zEhquT3lUun8tTg~(>5&3m_1(%JcG*8ZYL&2+$7)1Vr?BBIKeD@#dpebSS8(oW(Xs& z`QQ-k^~i9?Jb=OGQeCkz)+SG$^Cj&)OIJ$|tWq;EGL5G*S=O za096MlEX3^H@8V>W2o`(7LmCTLQ}%e>WxKI2R|>Rn(ZfAAgMZA@Qlfs@3R>*m`(8h zP)fQ@2vOom*!Wb{tBuV5Qm-19k$sycvGUWU3UhER=d6QRRHBvRGMDeO%*+gIz^&i-wPwjQuc4BhdwLs!#OaS<6L;{(0p6l+6C_ zmhUS8BXCCEkl@mjG`Tx`hBQ|#7SyMo9pz*b6GNEjxahqV2u)v&@^36W|hEr zowp|%c|#wP5AR?JCvaO6F`OmV+2^Q#-W$j)LBjo&{>S$RcDIR)qV<^W7!!WDxQ&sO zhTs=Lu4Mg;RLQ}D2kkQt@(|-tlvgRjX>aE@T7}#|_5xDFpC&36t472F@cs2hc74J1R|3_5jM=aACfb5W=fz_UFI-u6isI%3s1M_*Pcf)_OrdgFliK z#)5ssO?nLDR9?cJOag77rcPhD?1oePt7$DIkdDmeovznMrFXU1gfO~en@u%r5ILd0 zKtj?0=>lKR2uxq61A^Ey*G-`#u8;^ByWX5D{HHspHfwf%1Mq_R>UoX+I9X;^4&knM ze?lo7ijfy$2GQi-Q2r>OJ4j31;mtv5z&*uLi5cTP!j1cs5xHzqu~d;K7_?||V4(xT zUvB8_j|%r-<)4d@zKQkc+U&Y)Y3Tb#^KL)f|Le=5J@T zb8VC>cH)Ny-n~p}AS=qJ%bF^|gh^A+bM^2trEtg0fKM{&XPrt?Mq%L&<5Y??UkLEB zs_ofadqmGgOA~Kg%~e%59K=rk^<(#}Ewaks>p?|~T zc21MJtghNYsFrS06-Y(Fd2#l|GhEc=8X~dDu?kol^B?2@n^D&Ho0YvUh(UpRwSimJ zx=q2B(=p7}wdU4dc=e(Nv=TIgHQH?!?5J%{q||0;+ka0mwgBALxgO9KLV{5<3fWd} zf7`2xZCqI#@u6h;P;sgH8vD$$6fvu^)V&VV>Q8Jw5#Whn7%|YYQKSRu9Z@)4zUDg> z#JFPXRdbUq6FqWNJ2CKRERdZ+vb%JoN{xldpGFIKf9PPNW^8Bpy2XMHd}gSfFpUCj zzD*RJMn!nxD(kvlwy8!h$T11Z9LE->UG^y?EaI5AktGUy80F`P%4+z$wh2za}S8_F3Ysfe4rP88*%O4%`*$8Fm z9h_Kl5_Qz!Z)&u1DHc&NfrmE zv}OEloBw)A^y1j76O~si6sB@=LJ!YT_EY}!n2S;kCv^4J2#)&J_ifWkWI42smeR`K zM%?@aHlwBd2bCy2`7cLbYl8{XUVpQzHUtaq(duwd;$=28g2sn^l9YRc_ce~-*|zt) zUt~Ozy=fvaT%64asaY$|?;e!?rRu_eb*1KsfaH$BK=iN6VygKeV$ayPXS&OBzTKLD z{%VD;M`7RuY#$GW`M9}?P(1fkmspGu64qnG%UzxrV0GYrRy%4S3DL2j%!r*Wq#>Be zsi?HXDqX8@k;XtuuP^g_s2=S7tX6$fo0B#rA%c}r*K?Fhg~MvgdiPsi&r=kIH7;ZB z&%;dkk&PvHW&5J*yd94Q2_4_uNtDW9fENCLEY#Qlv#g%(i;GuzNPv4zriWdDiA&|@ z%SvIEZH>6le>K4@42*#4UwG`;T_i|JaRh`dppHz7R->v3*U*}v zy^|~82%}&p;cfgd41BgU2hP`bZ&CV8SO(0V0Q?N8UfU|j?4~Wmj~Pd1 zCVZq9Qf$2$3$3cb4FpOJ1^FQH@JRc?zcXXP3Kk!0X&J&_1#ql`O(dA6^2(jWrzZU` zb!KH~DhPP$GUuf2=@SP~O8L2d=I^jCP-}Kyb*V<~d2emxYR@O_rLyu+AMIu0sc!_T z;!Hkn#z1JA`Ud_?3t{~#ENNBl`sZkg!wku%;T)}&r`YT4HyC<}#I{r87aO;e|vz&(fDnjQNn&{S-A* z$5(eerO0JMr^_}&Up-|=q&}o5M!Qk4C-&0I${aKt9~T+6)d(@8P`M>(BE2u%$D2-3 zvQDg?H}0%^_ANB$#63Mv2DApN-OUJYk$2v7ihM`3_BoY7+bM1#Iko_GgR7K8gLhmt zLLdc0X8M9zR+bD(Of+dry_RrCm`xN*TV01%5jj_Rq=fP#EtttVKs-ez9ig~|PEy3i z$Mrl1xYJIp`P)~3qO@x7eg9e2mt+2k@yP~q^G+tgXUb`liKH(tyjKlYXoaX*^F*m2 zX#`5-H!x4GE^+h|RVazfCgzHN?xIVPPwBgpm(tD$aGbpL}6?yu2zP zz>N!T#ibv*Z+oS*o^FFWBQr7#IQ;Pbr|lYRuHlkquPu`PtM@Dk*o4e>39 zc0uBMMt}u%VMo4vZTaa|-&pCuSa8*>U)B8f$lFzcv`fWv@{r<~Fy^5SW^h2zH^HKe zb7TL9)TJHpz%FoqwD*CC&mI4$MdHZ;m`FlMXrH_+9PfVoF_hTvx&Gj zIiJM!L z2v)XNX=)LM6=jtCKpbUI%;owE8kAQvzFucFuU}Om7p;VC4Bh9SzcI!gi{Op6CnBmI-Th$hqWu=&rG2+L zL{rqrI|dvaxy5kR=efQTD$5Nr^4;_=eM8wjD*54!HD>AXSRZUcLT~uHc)q`}QBDoE zj{BA1Kdie>)4lOXfDyX!wdZ2~pZKkz30}lp4ATMwobT0yn32)+nQgrKQ+rRhex|S` z(P$ah!VEBtRzIwhzeS}QMl|ch<7=YjV$RL=>e{+LGbc~0lIU=-WhTPDyK^GRCE5bh zsaWk9iX~@`(zj|e5@~@xKF0@u#$LbcCLzCNYpI`;5nvS^MEm%v#8&^7_iqi zt1fCRB>Xb z9fgGthdLQEB}8)XJ2msWIMkTB55HTnfv_pfyp;-7jDK$x5%s=F#Ky>gYcZd6Lx#uX zZ_BL-Nt*M-$goT0{pX8A=3-XAKR#=QhRsxx+&1gxwG+`G^4mkT);mdp;W0| zE*Wbcp+canu+iig4Q}S0s>;IEOu!3`+nnbp%E5^^E>==3Oo5KFVTqp3n#Qr(Y~uMWGlu=K#T^U z@E*eI%8=c3?Tw#}eYYpaaiFli4*#Qz3OSmnq!odLR>chV zUunAZt>8%+Gpgj-T#{%dQ3Di~Fx;|u%c}<^@JPqQ^t9jVIiEa}Kuv|%2m9nWvhkei z63aAeuUZqn6toJokrw@2)y62(W^^npAQ;{_DiS}GOHM=?2RKR^TdE|B^f1w@Jx4}c zeoP44{Qh=4_tc>q%CtQjZ1z2W--`-S`kb{@@6Pr&l9fwzVt1qyFK8C)8J3W^RS+X; z9sf$LQdRHzC6PHmX3~}cx)tx;s=fF@Vh(}(q3rb@dUK&5=rHdEW${|;YYt=VUFvbG z0m-ycq828`Z1aW>Ga+-h-&#nZ1K!e)n3p6Tt-NpV?ntO)1h^ z{|TJZ*mL6A=Om)?oPbLb>R*r5Zs5I?kJESIWpVo6N3@m% z(3X04oM{ElJM+_gq>^nCbvlU0TM%fTBpXTGZ?tYQwzoSDpvM~YNb&GHx zN+KVb?RXeKy9R4yeNSjfm~g1_rFgdDw`|xKE?Z?at<&+e(Q!XIy|#pTzY2)sO4?wS zx9YrK4cdK8$nYxKU1_H(Rk`;lt~z9Odq&-9c(Y|h=}XG;K>Ld8P%JzC(v;v1U0rF$ ze;XVv&KT5~ovLyIdj{QHCmM0+C;79879nJ&_{U#U?ry0#g_P#d`6W_vZH(qTmY?`z z*GVHgK0qDCM0m`WOeJbkWYMrcb6nh6j^+15M;e#IA<%1kwO;wP*nm8Jl16fO%23co z1i^Yz1!Ok_{(UE9GIVn%EKr>5Aib0{ThfIrVsGiwB$%vKC=9X;PI~UqNIN7&Nzz*0yL__ePC^~w&52GyP%L?v@&#kdXkXrQ?C>oXp-)xg zz(5uDAda>}q{-JL;o3Xi=GyCJ#5WN(z%N#=a*VS*ZRF#JDKGF0hj}?wUkD1Z2gB zUYMLUqLvhK-21j))!jwY{|^5P@EHtra}oq?(;$?P>dig29u=Hx9K5?9^m}yiL|Av; zDKht_fi`A-%Q|Xk`i|3ie{h7gmZF$kAq8oJjcg`1aYx$?Eze`v>3kWcCp) zLO(fhALGE@B_4`c#dAx4x2Y2Cfm!*wnPPfF61qy(I@9{A?-Vb-@(Mc_jh|T>;lC3l ztFdz{(JzRqw}DnQ2u&gSpW|-C+F>+@HlBHH9N$)f*@s?eYWKBUGtJ=M#!%{dG_o7? zDWP~y>s6=hLue-v!Jt~yENhYcg#P`6bm|Po0Ut`6uVm(CvIv9}{gdbk9Y;AAtsdw- z?@e^nEL3b4b5s0R*HfqY1&6tj7(_UFv?q@27A|?3gR~DzXc?G*`OiH5vXLrqJAN-v z8EuaQhHO$rA>bv&_U-XA@gd@)DwvA^v|%IkidUT~%T`Fb@P(|AH#~FNadRFhU>90~ zGlwb&L_yo~V9R_ISRBFp{SS>`uuTo_p{IG zWLK&|n-Sp3dB=T;o#)tTI^Y%fi`Y_Up9hpAjZs^spPewP9b$J2I^*%=oyIIRn&o?qe~Ia!js(5XKN0QMT~vBJI>C=)Y&(Vy zbKnHbe?u?9$@i;e;HD+B`LrxW#LY??BKE-bbo*t#$|oKL74GQ6BHJKpugeebVh?r&RRL$COhM=!X=- zJE{G7Ox9DLv zE=4&-BsVwNY5E#*G(v9^hA&41lCWV;z_(8BE}4i?;V&VV3Ryc9OMiKx6CHU-KX33n zQBg?Q#f)XZ(;I608*j^q#yahK;bi*o>IN`IvTeimobcBGvz-7Lf-!Ty+ z%?d5>#QlfQSv61DQxnpnPhSy?MK)8V;5DSW%Qxk)#xtP?(%AV8Cjp<;mv<8BPXdSX zN4z1{Nd>=}9ww{E@8b~YCj~+rMdHOU)?&i8zL|1g`PvjXH~Z8_V^?9M1II)2DWfay zUQ5}|gBFd`cK(V)>@19hV?RO9!}XUmiy+6DkEp-di?vgD@1RFG&U?(n;##D=9&yw6 zExcWN)DvYQPPb|aBpiKPguU6pWnl<@cARWlR-|T*!(|r`TrOUt9L@1;>@_mw$LM?L zd`bp!V;=QeTb2yb%!3mBm^)AO(H$&mPHpv_^f%m$0j=g~Xo(y*{do-Y!YF;1e-mh+tfx3LymF zjmcTu_&fIOuWUn%hT@^~a7~v`aMB6F5PRY>=f&*e9bBJmLP2|bZf{42c0Nn790qCh>t@{P|!^V2H z6X7o~xqn!?EoCX_dR>0HCr7K>wiH|E6f<=A z53>>cJ73)tg9x5sMkZ*dY;g)8e(xVmDB)wYwT0B7)dB99fT zVVe?^kmeIP&zjQr)MqDF9+(;K#=0a;*Uy+_L*><)i;nqr_06+!XxICdBBA18H!0&0 zH$YXnA@kHwuAyx8uNNjv2dMunayfnn*I_}@0zxQ6lm+7@Ki&Mk^w|+cI>||t1BRNc zwuvaCwsSD`d9z(jnQRFi`eE=M$WbY({^Q#Y1qsR==FRF!h8Ml#*+BpOx%GM+H+j_g zdu9mHmifF3JY;yqw-AN6SsA}t! zI5;wR7>S_HQ&~;}UL!(qLtrD-W87xa&#b6rueefnYu$-DNr1D-UYND;LMUv((80id z9I>R zh^mo%zCrl^+WQKHxRzjBWN;hY-66QUySqEVgF|q4cL?qlEWzD1xCVmT;7%au9nO1y zaqkcG?yfHBs#>-7{)$E;&69v(Nc#(}+4|9h5!!+wli?biX$%$q&%-%88>v+|(whC# zCl&JbF|qS*a@LuT@nVibZbJYR))259D-Ekpsd7)_cA=n(kq3bm7r$1=$hTJ8xh%%)DB0~}!3faVvB05{SS}5jry45A;x>E)6e)&fQyc@Lei?=@Joon=nMIImzDIeH& zh}!Gm>MIjMS;cG9=Jt7Q7J2B(K(^K=uUFd(9)y;wA#A@F75p4!rtdbzl>!Ne!aWS( zrR*g5eb2S4n-%}u(~HDY@TpQ!v{T-sQQxTjS27g+*w;ug!}sI8Rcr~<9k5F4^Ex~{ zCquhJVi=9xx1ekqC^A%ID;33S?&elvc<-hZD)FjES7Tr2h=ehPTZ)7U7!BB)o}BiR zi)v+i^nMQ6f5mCN_{jP#Jq9VeM7t(X@--Br};U~?m}T}t%GvC236o7YyIAzn@ zVKgwfW(buW1PO}|XWzz3*cbnV>XvzED0(qmT?>Y)_->y}wdK*5bEF_anc#mWHAyLT673{rerOzW^?m64%s5q0%-Sni;jkO%z zEl?w5CugIIsaJhAc9^Hj9~asI=!G^?ER9)l*qe7b2QfB}6Zbxrac%^3#x*tD->=U9 zVjkAZyPSxB?c_Q_dNzaq#15_*#=by)$~;at^lKzAYPVN4sYHj&rHpz4K?>c@)cS1s zRup(kV(tRduoeZ~s=HrNSKmrV$yHl6!5DiF#4i}>uwmk&saarXmlVGlPU$npo{yKw zFw;o!Hzs&tm~FF#Zz)K!bzdo`!xMzpI7kQ9M+%q7hwfQLHI=@$mAlN~DFNYh;DTiy_nWa)W4we_rGYhgzO zXqZO`p0RTiUwj?mpc2adz2>Y-nwWy5_g&i?Y6bT#PKkh+IN1@fJz^aes`Bba4g?(m z=MmWmp+<*$$xfjreNs_j*FRlYtb3JX58!LUa*AZ6Ir}1ADhzk`PJ3pZMwEJU| zOAp6b8LGnJnpYzFD9EQIza$Kt@w*lngHl)*TCt2x)PzB;V=q{hAadTOQooTgE z`e`GK5X7l@;&|3p>Ps`Cc*(&dMK)3#K_h%}@@K8Dks{)AT`Q#oY+O}w95OpxFLW+*Plp!CV|PsasKmq*$+f1xTI(JZ{oi;uF)D|HRSS)lHr*RX zAZ(Rr{$3+Qy<$+TgLALP3iYa06fD5a3#&w1{m82#}OAzDLbN}yijhoN9g%-~M{75!6; z)8i+V2I#sWXkLvX3(<>fr%bKc7`)?pY_+e0g8Kk=C94uI<%Q$NO{+$6NsKE{k@Qle zTLo&a8FgrqVY_2K>9s>te?=TRA`g$#R?9g-4i+!o_KPh9iCs4##R8(4@OB^Du`si< zyR+8k^dx5$1ZYc6s0x4`)8OoY&52vNw4F>9UV$FHSGlw~TI#pD#AihG+*Yf&sXkL6 zx&bXz>~a5C7UPJ{TzV%WDiC|jtEjoS0Vm=7=~Mz-I*StfAhfxXh~A(MhavyzI%p_` zd)5L+s=lCsXqdZ{{+yz)*!d;Xnq&b`+v`T%#fzeOK14)G=g2c`iGu)ysbk6Q$B@Tb z2&gLn!+9ZG}6TUT*3Jj8fuMG2ntlHJrJ*e+*JA}?Ys zuSdO~;jIl)EyK1=sC>&9zjDpLV&%D~pzhcHK_NKcIaG5iSLv#)ERsZ%)@ftio0R|$ z05@Ax41!p%JS9Mh`KQpg*0KcXYfjlySRT6nG55*xxWfnS*Jk5YfwosW#eo%TP2 z^7lGL27Qrya~5@JcuqJ`jf>i2v^3YUV1bqbqAY*ST7o%& zN{4IEs>P7wV&rk(=0r!ez919{dnK?boI8uCm|DS>j>?75Ecjf$%3~RuI6)fn+@7I` zYD~y*J7#J}Q7uC+tq<(^I$?16zvJJNoBdS}dsmMm3{DzE} z06kv&F;;MQx6s9A)z{ZKzVi)bU?HZhjvx(W%C2v9pe*TMslK1T=Z%j!WH;y))BFCd z-Q}#69C!*(X1ehz!nmAiclu`qJ`BMU7=DoT9>*qv3H*%}24h`7{V{EPhcv{;#Ne8@ zb6Rag9!bn$RxeGVg*bO5xMRI>4>|d|1|BHG506%uDW!O~{E@%J>VN%~@c!?|GPXJJ zY=~}suvttrv~(m=#*zr`EnGHL17)W1ys~92q`GM`f2zH!ZqWL`uG76B8KnrLSMG(xX?) za&>ROZOmgo*Ft!|9=;|D`_pp4Hu#X{^{>h;QCRtc9Str*aLn7ZL=ADe-j=8$I@(qw z@cUwDuJbDIR~PDG$^xCDL=ZkJK_mzHp^4kE`#Mqeoai3{hs`RFpr1QdoAI~VJ5SO= zl*KKu#L(H;;E^B=K=aY`yT{L~l@No3@u$825pWsl61`&~%MHfea0a(!KfN5NZKX+I}! z01aNETOmvHPn4~Hb?za^S&?7NbJx&7;ii$819XUI>0+l<0S}$cfQJN=S478kUSDxV zbt1z;ErXktDmnR`t0aJqQ}&v!MHIas4dIBS>k`{t5soWxxnk4hsLym`&f> z;2J<5{_NA?lphc58_YTn>?lP!z5|ab%jP8(`@TDTok;ixfXf2T;#F3EWK>aEd61Iq>)CE zzeo8(m5TtFIQc_wi4|9A)uYyCrxSQqqVBn@7kpfY3DP61d#<+o(y_XYo`PWbLyUXT za@VZ7WW``O9M>xW{Ro#Pcbl!J&-gB1MRRh(D6x&%2jud8e3i}E`NB@kRWES3i&W6{ zI1hgFFM=!N`X>e3f;C$ReyGDYTlZuB%dhLV3{)CGG)<`B2}LA#an+*n1T`3Pgn?(z zt;E5HwXF?`b7zFaLGJ{C-w$|wrxN5frGWbGv=no_ht-*BMftN>zAD@6TsnmQ{A4|} zqt%RPb&N>Aom=B}gqnzhiB@vyYEW6PEYzey?ziXoo`7{^uIW+Nz3ACu)b0z$P4CQ0 z(*~G}3xUAEPS6l*#2FHvUNh-k1$Qcph6y%j3mDD1fR1fpjsw%mD)&QMZLj;mt{f)6 zbxxpuyGf%tO~7bk72IYuZXk{5WB&kOee+B5{TbgtW;v-m=>OnNZ%qboTRb6jElCfD z50m^ROh3tuYvGYCDvmN~0oR`^n`s;HTo4TyC$dM9hy(#< z7=OW)edDYpXaiOl(n9XTb0?3p!{*V^*kXso^qf80r3&Tq+v zvIKQie8Ai5ha!`1Wz2S;;L6Q^s)W-6y6kyYvf8QPjJdlFj6cbgE$Gx-`nCdv*CgK%{$`Re9j7!k_EdPIT<=EVt&I}*#oKzZcTw)=$T#!KVRI7$a}|&=wvrwv z78!wOwZAY!Td+GBp}7vv#U|+0&>{>{Qu5O}JK8b(pw)Xg*r=YELNJwJ{!rGt3Rqn zaXVoLNfAC_g+Ti(~?e)g8Gf>5!yo=fz0C@ z>n6)Ok`2CnakS$?Yn_ak=%T{FH-gl;I&cb!Zu-nUJX34Lmd&2j%?8LI1*c=bE;-_R zC~4vSca*=F5l)-y@;aJZYO;$$ERntxrjhN5tA2;~C&rf~<#fmPrx%nH9~9aEHaN$Z zk0ajtpgg$r44f_8{kE9qno8+=HpG0t_O=l!;YB*}+kr_;dl6lrKNa1YJW0oE$TPs2>#6%+r!Vm@JYUdX?m?kUBB;BDJRuP9*DR;4s#t=<}lf>H0l- zag>RnN-ECY2_^X8qoL^fkIH&AGT_$;j~}AA^wR=$Hi#bU5E+rFeV;<|>0N7EUQw)_ zHbhm5^{_DMvo^p^LfP4^>-r6HT(?nQzA)UQe_RwK7gi3qE&5xMq^&N$yeL3S)*ROi zR~dwAkLWkWm$F?t`**fLs}T`1rVe_Ko!pL@lOW!$SPtEO)@55O69p7GDSAFpP=uVbv$uW~zE z4bDlSvLn4V2b~_UMiv0BHj}HyPcv*u&Gvh+_>#l(qR(XG)U@NkNn>ms<7mm!NL%&g zHmdysXf?W`wsvBA^1>!)7nyIB0EOEAZ)n}NrXitl+YswNeOD-5=x6kEk5S!*Eevts zh~QQa$WPlYknC5s+ElukP%I92H=P3u?jSKo{>`2ymhwhJF2^Hqc_L&JYG8x$fCnqY zUtDUwIlJkjkDiJrbP+pCI6d7vv3h4?03Vdjgy!#*{N0ILt>DihKO*1)n$dW82uVm1 zWZj?lhrlv?dS5)!)Q}Y9vP=_Z#`-St-YU4Q?Nt%^J%4KC_f|ynMC|hWH z>9@h~Dsj%2!gu5;wey+Y?aw=Zp;h=$J%U_p2ow$FnJC+vBu_D2m>QGSpD|VB*G{ym zvH8qY&ME0R6gYTn^vQuq7}0fb9Bh$9Epxs8o%=iMbaNY^r&o`TA6__V{`)zly*T_CSzt!pqlj$Q6`8!`gFXcMVC^J2ANt;)>F_Ug*@@-#zzTD-3y|N-JGGI&L<-k}P|u z1_qdm^-CVg3|UqZ_&XttZX3=yYb((W=g^;Uq}6{2(F-akWaIKOV%yDuQ_RC@gW^^8 z$DsPw8k+wS9|VclH(6%+oqR}?NU1x15?>;;DRKG5wnC+{+Ta#wjl9-?$?$*d+vm$j zw`3sog*=XSGsfIRYe{!>5PrP1_3iSQ$BEAm=C{m{Th0tt(!pnvwt>XGE?N-N=y-Nw z;N-238{pzHc_uOk+*zAX_l4`i_0}GpKUs{CXKvT67IUZ>xBQ@=EvGbf0nf_nx$3O9 z`Z4O{RLy2&M*&YXQ~yn%F%^>+?dqR?g zAB;w(GHC&)O=f4!AJki5oMYNM6dk;O@Z^^!O6CfZtuZ)L*Wzu(NVyuK5LR5~aR(B$ ztEJKiR_~3@5oAF8!zS&Ntce7RAPsRDVe>Nc4ZpABAJ)zv<+FB4@^3#z8Q6Hu&Zk0S z%AFa!?n&R!9jA=R1$jg;^VC!Mko&(^6}c7Vp^1Dl=zSKVlAIb)&Ch8e)QBFXE#n35 z5$yMrJadl@?H}Q=czoTY=Mrg0KlZy>6dXA?5mHK9L#poxJxB_CEcQ8a=`wYwFL~gY z@MtY?=6L`Ezq$=t&ts!mdzCc;JCzkC=mGSq)4R8!k6skCf zgNuUev}*eyzkH z-fnk&CMdX|UDHLE_+ubp8u)=7tMb1|N(*Kkwy)K?OD&K^3lXGmXiVT0*A@rj6!_g> z={U+@?40{hVb}A4THY?-<%kVaY+cQ*9L`m$a)SoF;WhIK)l}iaMuOCHXPo04y?!1H zgy*8dGK`bEYq@PZ*>Dh#i34qPiGo+yW&i;oiC^U7yaST}vEy$kK3h^E8WiLy$g=YE z2iRmA@_C7;a-pe`e=HKsrZl>@SWC21KmT>8br~x5)Ai*vY?Cow@qH9(hJ1HkqfR<+ zA#~P$0EyUdl-zNFLDk)t3&>la3@hE7XZmKdKlm^|hNI6OhZc>jNs0^4z@sJSy^qxF z%J0Ufh-~kA2oso^CC&x}>{vD>eR*O)ezWz+#?1H?lSF#n}{5alZ&(bNwQeT*9YW!_lx}KBvI%n&h)u8h1%H>$z`EK7S5GeeERaV;(h2 zkMP}mgR77%mlJMrGB;&lcphS`V^#R1Mnt0o0`9ha$~j^D*H=ob7So)2no&T?4#Q*0 z)6&*Ru#4=NtqP%~Jfg}qQ(~4g@Fe*2558#$dUtfZ>I$UpS9D!mz4(G5`l`}9E^%EhdcSlc0{?=2oJG*iP)|{Y6G|X zASY}FId!2h;3r)Y;$Fr#){ZrQV9FWVo*)uqqZc^S$-B}_;2XH z3*L{8W)r=t9Bu5{XW7%7Su;82?kQU;(GuV%q3RyWRSNeSM1B=7e94VAkOOj#d*r%w zG!?#lrC8t4`^SavTkEyuyL1{4Qd-Zn`<%SzL-^1{5jREQKjr*r6B6xcV~sS%Wc)MP zx9+7lw%oSNab_-}$^PSB1;D3l+-s!!ItZ2jZ-yYrvmA7wqZw3A2H%8rSXA8FYZP9U zz4apTXvDOftW7)O@O(RH*F%9&rAl+X^QjW~-cMHA5V}4R#(}%*81=O^Q0qJd#MYtw zx4%)1@WMqo``=GA0isRM`u?8bVh`iJ-`VEy){0bAJftg&ce4_7vDbwACH9$NM2pPg z3(d}obyHmL-F1+F*7IkPKJ*1}wL^<+st%MNx?&WHmFu68LZ_hG!1rmLb!Q7T&`#=8 zj&a~<-h4O*HwNYcGq#B{WUjO_VlMx0Cu!sX=s))0d(6THcZBqIR$F=Ul1iN|-Wp;3 zI-SG>fiw0;BZfgvFP~YRs0V|Cr%pwn@g?;-I8>SkDV>O@(T*~v8u5sc#B=eRIFh{A znuFrV?pAI7PKY~T=1dD=qT41`iQH`Z)o^b3Fpg0<^?7D1hp#ESR{f+lyp9>yI6D6vw5XSo{ZJaTH(F{u(5|qn7uM7&xUO+)<0U5}B7qis|O$ zTkrT!J@nSoha*#VixS72Om;~sZxEwA;QUv^Npt1f;f9;pVkn?xgX(0v+ z72L9%{1|h%g+0he*%#cT+dk&f8C73S6g=U>6%D1AJjqt~Td;oPYrzjcA*!&>owGrk zF3Lq}^+gTIqgq0)E$sU`>^ZQR9CIp9eoow=Xnc)F{<0Yu@9#1tm@^?J=N_LauKHzG zmSR@e4h$ex>X85HZ0G2HPBRxLu3x+pppHj22MoxIqQ8q$#V+S`|Og z$b33RSq8N_`AsQ@i3}JAZsX<;1!mc1UUVqvzuy&>8&SC6h%+(`TeDWBvp;^l(6`<9 z16LJU0anuBJF{}Y`HR|{ZUKwPlRcI7P>Wu-K1dfm<@Bs5tPfdhGu#h%%&&PQ{y440 z@y+%+4n`d%+=>;^rY1Cgk3$OBT)`yr7R}n|foL9V<*@MCcUCJJ`7#%Fr{j>srHyl- zpNzNFRmGH;Uj)97D}TktRb$bvx?|TU_!i<@1C}yUjbi7y$h!hyMwO8O+J&uAatW?Z z8)}Yy@6A+=4e9DZdnLv^XebcEMQ@1uc2=U4NPiCe_88t88}pa``v;ii1WtSp3Fr9Y zaFdXp*!!AMtr?AG3I`Zu$#vO=_`0tn1%l$-x!qP%$uHuRG;sUKkg4 z3Y2V&9sz%{-i{Xh;lP4Qssq-jLTI~EGfo1!U2x$;{i!eF`K*4P=fLPuRc16tB{S8R z1AZ?So7{rS>zsXYP_S#7EuHi^xkn)xY#oO&D<;gJWiT4j#X>J$p4U<_cGz_$EFkil z)W#uXVcC!+fxtMbHWz2bGgvIkmx^Xz~V_m$&y4h>`DtRi~bnFz=^BBOstil6SqdxP- zj{-08W_%BAc%~r#QMEyOQp>^J;K{^MobBx=h6MP0DG@sZizoyJ3B5a37b$9BU~ktb zh_mmpu9Is4ifh!t@_?E4ZL$fNk9+#_gWn%1G3fKNu~(c&M1yJ>tsb%9xUO4dY2Ra( zxn(%&&CE`AOdkwJ7}iKVhY^soNYblDDekdu3l(WvB|a#G5Ku*sxcV_b|Pa@ z8qpMSKTv^B=slyz*!S7#&r%yE?CK=x#$H8Od0rtPtewA@9-Fg;f9JtQaESc@<;9*p z4y_tT42g%zy!QZi=EdsV&B{fMA!lk4bG0U^g{_{BIs>IvLcMj2UBd5b1Bu02p$Rmr zOZOrMebW6z#T^9e(cfa11rKw(_IfLBCBZPLD*CvKlkYnLN=%HzE}D9g#0=+XC0*W* z%1QE3>*6W*{C!?WLr%3+u;78b(VT?#qBUmOhv+z~1NjqbFTJOi@D* zOoA!@%%P%idC0@5FvJUG<4q#@Q;mtnlu#XuF3ei~CGy$D*|TsZmtPPFjgdzA>28_! z(ZX34wdaCSpUi0iEs&~qtYb>hjVLlcn?j+CqFzq?)sz3UKr6E zyfc{fCOQ$@q6+(ZxA6Ir^)G^n46Y+z!pW+ z>Ty*UT@ifKc6fcYA>(#!>nD(Qf`k`=~=gl=dUbGE}QJpSAzC=(l1 zbXE)YXrC~^9?ci2D}b?LHtZLB7$=M)LA)>~nq*RLPm$D%~T=F$T1X>}u(<;Pn_8K)h|PjoORVTKtAJ zJ0cZA`m_?JA|H(x7U3gN#sR#VF8$aSHzAguQfoF&Gwghi^0fY!A@$`oGQkq>kn>@T zLy#I!Of*STZkFaArz_i!!(Uh!=|(R6)CUGio`YfH^KEOL4vHKX>pQ|Q;%kI~L0XbJ zdPSPs8QVNSi3W1UZda2^Y$|Y+ULB^<3QTWVN1?lN_pO^x_M&a2@w3AAgiJxBh<)zI#A;PzAK ze8=bToXx~7XL0Mw?k4_1W$WqH-T3U=^WmFrTs^$(>wkpLCsM0r;^dUj#51zvreNgGaEs~REE>Lg?? zd{l6fEGWAr`2wG+fcw*BrC;)QB=W994YpPUJ5IQ8)iEgS^cPg%M$s#n)c+%Lc0T_T z2Y#nVTt#hpf5FYh1a~Uik@x*9*cZWYl%puK{`O9dA^rC&V}A5eiLbUO`zWaxxaXU< zJVNIKC{^LQq4Y>3jy1kRJ<+mqO@9{(Qrxpvj;u(4vS|)$7YY#L;UHyX=Py#VbQud* z;Mcr#ZSgHNHCglUR{{j5En~v}(r&QdnQTeV6FiXix zN-VT1QWPU%)j!HL7O>9hLV^1S;6LIF@#Y{5bzRL0W3vgYiHm!pMa1RFy!g*rIPdZF zQVT^9%7++m=U8d>`O}0Ghi3dd@O`KEfH$W8ha6m3RYY}oP+VZmZ4q%fm&cTX#Id38 zHOt17ybxuz)85Ml#-9>`=LGl44OM7a`GEfo$y+jKlRLl}&(3D{e6;^N zYyN|*w7Y5$4&U+yWjH9m_TOm}8R^VdD+;s%c<(@>x;ys+NAZ?eHNb>x*E(jR44Aot zs-#*SgoL^Bb6|_x0{(3D0B`VqcV${$B~{kCR)?51t0 zdUKa;5ev=CjBm>-a}E||JWo+8Fiz(KLRjy6gU7o`rD9Ds!2?UYON?Q zJ|72fmwLw%gl8v_rDgh2?x-TkD<^B|^qO#sA`wUiv`Hp41PSI=efmu+8+E9F^E-C* z6v}HSogCMQW-ROrjWx7&Pi$=Bt(_G4svXi>{D4p{ecX*{Hlx6$pqVxtu{Ae}g70s% z4+WTj*KN7nc)821s`TBHUVXWI4{nS%)BBf|@jJ}$-IF6p@n7Kl{E1FT=EP>G?*9iXId9oqs&HzcC*C3oMBmY#0s`oC%Y(qBO6+ z?@pKN0pB|kcm+)fMAR{DWuwl>UCMTQ1gHfykzX%#nVfU3;M0f~h`GV){l z?`fsy8adhr>aqktP5@T0B({y19X2wRsf8aT;U7H0hJJUeyv8Zm$thvbW6hG20+GqI zu{%<$YTVNikjGd_us^5? zGfZ{h_#BZ7tZG2^9P<8sSI~@cxyXR~+CgJ^e=6V1@O3qXx>d8IO=1?dleIS#0uVwG zM251IH!eF?4V$~(rnc6Mre4II@9VHJV^rJfrOCEvV0jKIwi!is=Og+mw;wgVU^8C6 zpZ(xR0di0MVq%c-RAnJu}!QGyw83;^CFURuffKZD5MYdkz-TCe=~ ze-z42(seL2wB_aqMwq%@ZH7i*O%cdY3|c0r^LCq#JN(W)IA0^bH`i?lX7>26*a|zz zB<=u%`c&b`WF?Alo)z!5zpS>ZoNPVk`GOc*-mP{943>?}NfDm@cv=3gu-%T&9@!{Q zPX6LdoF}49c*QiQd4bK&UHw*AEOf+aI-7<^1R!I@3(omI7ux;n@;rCj~0qLd~N_SeljNh|Aw?3K?1v zk`s7#LASF%h@pV8DB$C^5qbCzowv@xxrBStp9{N)|8Z}X3#H-LtT)Q3q$@<*O2R#+ zoa1t7FV^awIr;tPfz(;6-Hlc`&GuJK`tuj9cBh#E!aCANK>*pd5M=q8`u@OC(fZx> z=zL+0tWpq(-m|{>V2uSsNAxzbX^|od) zZw_t9U{#?M4Z{j$%XKOdWyqY&*mR; zoi!Ip-|UyeFv+PaNNXiin$etAJ5}_XT#TLUzki1iw(ZeASg!gNG9fR+jZvp*cE}G5 z5^V!y{ZwdnN<}++nldQ$KGnu0*Q_G9@VvMSy4adBz)I?Lib!eg=R zrBW~-D`1nD(2AUjMyK|vzf$r?@{L;idm|;#gexYOU?BA%UU8ydLse$y$wx~ zlyG>WmO}e-LC($H!ZaeT*zskk;eTWv&^Of76#QDJutql@-|IOPek$hF?+pxs0Kig$?OK{T zy|)pr>&@+yMPGh&*=Qs^vr{t2!Qd(}Hnz-_=k1l!b|pZCrwKQOYn##gx>LQy>&Jc^ zVP?Y?uXhVchWv^v6TB!{Ggu^xH(j@O<2IG2zgP|yJ1^U*g0fcv$@ySlRw?DDr8)f5 z?jG)K86J#n-~MnP+dF;jPM{IIRV-$BC`oL)9u7a9hP)+&7lnY5pcGXfoNW`jsxYL6 z7JBZGmhN7&UE;6T=Zch9f*p&XWM1_l7-z2`G>2bEs5u=BJ(xPV3NA4T0=76HHaBE6hgoC|v>v zFOEtF7bmX16*MfyR0}#aNiQiF*2}W1-{ff4k)VKhdQkA{G>^0u=RO{2D(41H3NyGS zW0tk3#;>WQw9BR`m(~MVTE)R!Or0j38NB?RUpoJ=e7=m&;nQGf(wVbVGHw_|NUp{F zp}p^Q1qBITnh3r%;g(iIzO_$l)wP`}uTMM|-HNy-@iKfmpVFU8h+V~=c~{-d>m1ke z%5B#V)=XJvxUWvoSI+{rVW7ZDn2pd7k!IC5cTmzTqfy|m&3{PhqI8-q@+eAkL{j!+ zp}g#2$4M=jz}#L$JH1mYwvhW+f9|tV6JD9Ugp^6({8B*jx7%Xvb*Iwp+UdUI7#rIihBq|I?wQeHSNSXZN*}gFDH;TC3n-Ln zjgtiZ)Sj=~xXQRY*(?)Fk1M9F_!A!4U>;l`ZaSy(R3pi`fM z&}iNHXLu(5Vn*jZo?8h_uh*wfXX)M-ww{YOxcor{z^vMz^LS~?U2T$MK29s>HhGC}S8um# zjw|?ADG*vohY-U83<|;p=t@k$@=#M|;b(izx}7w+f1lNThBJ7eH)=X6hu6ah$^TPg zFU7Rh-E5Qty0=X%TQ9y=@9}9)V=`hW@kmrlYXaidJK)i9gO3Vq!-b?M^_?5v_EqCt zFfw6jc5+NQ&16w&jbHQgf0deY~?|bV82@9re9oEASDmt!tOF)WHLNGat}$>Fr>0*7E!z2 zOZ-(zo9~=XJozF!_S2CL4*)ipZF2By2o2JnO1asV-+=ZfWqpIHD-%Hss)6rMu*CX< z!57+R4>tCU4i{UQQ{i}+JwOF zK^UskzasIAU0uzBODTOREVWKB1UT;ZO&MjZexY3!0}C!lbQ`?mKH|x%kF_4b=f4@& z_>BPG6PYvkd)ug1ULS(-BM&0`w@ZH(2KG8YUa$o@!*K|HC|M6sG|BH8%TpY@7JM#5 z2v%DtJ_!K4mI?SoJzj_cA8G?oh7dzs??*=akPr(1NM#}zp7*gV6m1Y0%!O$L9Qb>E zxKQvZEcpY zEX(9tna#B!Q+#zU_ogDAO=a9Ca*b!TGVH11pVPsxu!Hent-zdahPgcq^Ll}Zaegnu zd?4A!Fu#v+K_8I8vY?-Fen0Die%6H(I2KLdTslQ?^=zqi^Q1Q}klnphbKg3n0~_>@ zZZSHx)!^t>vt!$guWw8`v)B3TUdOZhTyGs>zI~YG{6Wt6LJI6%t zpHjPV!vFDU!D}bNo}LwXenH~S*@(O6ND*o@QI|Gv)o@v7tZtCqiSvj4ux{r$H4@4MQ+?_2)9@A^*}Q2Zz5T$Gwv zlA5AWo>`Ki;O^-gppc)Zkf`9Bn9QK~lZBCsp`Jm90SG`b#=t(Wp`L}gzO}8rjhTnP zrK68oK%BQlqOYA(M4Ur->a~W1s;*b z3=G^tAk28_ZrvZCAbW|YuPggiW^Qg~6A7WOaq$lGMz+)FO4`_Yn*X zjIy3Cjv*GOmrma6ci2Fr)!uoYVse?4dzY37;HcOU(q{XAXF$#5gbOns*B;*@cLiACah?`$rO zl8=|enc}X$K7ae-(T+tLeSbJ-U46y;z?b2S*yZvEpRSy@*jYcThS^`dQcLUYbTwd* OGkCiCxvXLW=UkO8ip# z1JfsDB(vT|`02rY@K zT9Qz;IJS0~f5W!y>iLQFE5cg0hqdj>Y+e@Gu_vZ$Z&~-+r2d1s6SkL5+)_SiTlTbL zIn$0-PT5v9b$jdNjdjy^7S29dI{$RbvQrJqFE%ef*S-As+-2*gEH`vp1cYv+4BQ&1WZXyEA{wxdmI!F4=l=@wRj8w(eQF{p8{u7uN4My>{ohIeQ;0 z+Iwr|o{OvYUEZ?i?ACoJcI-d4YyXkW2QO?qbZz^gvwM!5*>e2Ofn(?P9lx;s#GN&# zUhX+@Wyi_8`%YckeCEZz)3=VCy0-D$n>}amA3u9(-}#4IFTOi*?#i+AH%^?tdhWu- z!TUdHdY$S7+|Nzj^2WoxAsM-+OTN z{>zgOe_p-+`r7@MXCD8$`S9g~2M_K%e0u-k<2#REK6>=%($k+;o_@RYp#z4e|Yx#%e}Y1@4fqf|NZ|5@Bcq~|L^U)_YXh(fAsPH`}gl3 zfBgUP)8{W=z5>CwZ{L3W1cBebfB*ga_us#N|3?8v2q^y3)kxMCR@Sj140SG{uh=JoB!+%i; zj|~oO-2a8Nd^`+Tlssxzow%^UAd!V5;Drz8<7eCo%F<#%4GPPAmwL4CO1b#C!=t^0 zn@b~5g?;iex6D@sTw9;JIWFU8GbZ8({Xk{QrNlj4iWF>9@00FB>L_t(I%axHmYZOrw zhMzMtyOVX@O-K|ZVxt&TL<0VUfQ6!V7J?#(mH0<21raPIq_wcH5CoCLu*M?gHjxBG z1i#1{m38KvW3hL3XOju&feVMreV_B5_X_`5{-b^t((@2agMEX3M_PZn0`TJH^Bch8 ze&S|hiz71~W+pdCYd!i|8#R44-FkN~32zoJEL_}we6|Gn7m#^~PBCF!wzt=>Lb{X; zExL33^8HHv?MrXDbLBk;+Y7X&?&8@a(%Nevni>MkltV|4RRXm3fv-ECXdLLW(|bU( zzCk~0Gf}th2;k1j!)v3^@S;Kd9FaXG@-;-(aXZZC?`N27cHWEtYM2=ghyxPT0Dc1X z>%`1~_wZbkhN_!|Wn*Vos8{TEhUT@5e;_WJsIMMcG5%>DiS&dv_N`4@J0cnAQ-#>RjZ z00W5t&tJ^l-QC*ST1-p~00u^9XJ=AUl7oW-;2a+x2k__T=grN{+1c4XK0ZL~^z^i$ zp&>vEhr@4fZWb380S18T&!0cQ3IKpHF)?v=b_NIm0Q>vwY7D0baZ)n z31Fa5sELUQARIVaU0nqf0XzT+fB_63aA;@<$l~wse|mcA;^G1TmX?-)e)jkGPfkuA z92@|!<>h5S_4f8QP-JRq>d&7)^Yin8l7K8gED$&_FaV?gY+wLjpoW%~7NDe=nHfMG z5DO3j{R9kv5GbssrUpO)OyvVrlx>u0UKD0i;Dpm5S5dY16(DL5l{ixz|mhJU@&-OWCTb7_%}8-fE(P~+XIRO zJU|wp1|S>|J3KrLcz^+v1f&BDpd>&MAaibR4#5A_4(MucZwG9E1h4@u0P@C8;oo+g zIVj7kfJi{oV~E(NZ*h(@^-(Q(C`Psb3KZ{N;^GB(a8NE*Vwc715!9 zr-H4Ao|T_c6+VT_JH9H+P3>iXSt!a$F`>s`jn`w9GZ_~B!{0soaiV|O_c^R2aWa%}O3jUE)WO=pa zs~_Wz08z|ieY5A%$@FcBF9^!1a}m5ks@7gjn;67N>}S~Hrm`4sM5Hh`q7&5-N{|31 z6x1{ol7BnskoViZ0GqbLa#kW`Z)VCjt1MysKg|rT zi!?s##Ck>8c zpi|>$lGlw#@yMNi&V4`6OBGJ(H&7lqLlcTQ&1zWriG_fL>BnFcr~?;E93{M-xIozQ zO=EHQ#+?<}%@wbWWv23#!V70h9MOuUVaU>3kpTvYfc|LBw?&b*89~Gc9i&8tlT#kF ztpbZoAzkdB+UTy=tx%L3Z4)I{zY(Kb)eg{InobSJmNwPZt$14aS-uc4eKuY8h$dtfyxu^a%zA)>fYI&)@ZXky?^{5>xSC?;w4r&td6vBdi%vHm4=XJH!3yL3?Ep+T5aU_>i;yr_XGq zxZfCzUU@GvnoIk+_Nd`aky>S&H!b*{A%L>?*XPAgWL(Vf(k7qUS}>Zn=U(ZfcOc{B z3*tOHH@t5Ub5D~#N7!Fxx}P2)sy{vE_l(R7$aW&CX>c|&HY+7};vUIietK%}!phrCuh+;C@1usp;XLU<8Gq8P!rEI3ieg#W$!= zQcZr{hp>8sF?k&Yl0?B84OneiQxef-4TEFrq3O~JAZR}yEJHA|Xkqd49tR&8oq{zP zY@>J^HBV*(gJvJZc_0VFN7Sx?H7#75E3#?N8Z!C+_f53YU}pyggxx1?wQi5Yb-_`I`_V*SMx5+*P^b=ec5RON-k1cIlsBLk}(HiaJyab0`CI zo0{=1_LO$~oE2%Tl_}KURuX<`+mQN_sTdM&* zkFf!Xtl^e^gTy6ON=&gTn6)$JHQq2)33R@_!#9?BLNq-Wi{U|rVX7Vny$l6#+SZ@KvQt@VYb%<9JfapI^b9j=wa+Tqb4ei;8c5 z&1>Uz@lVFv6T4Z*YU$r4G`g=91lSeA<=GRZ!*KTWKDPR}NPUW%peCUj`Ix_LDq!8| zMH-V`Pv!a~QkTL||L@cqiTz)*G-0=ytr1KqTuFPan9y4gYD5>PleK`NZB$ev@W%t= zkp)_=lBUTLZJpAtZg;pjI;7r2y|26-N7&a(hX|`1YNM9N8{>8JAuv}hp1v`3JHT-=5lbXpbMq7X~2J5Kl zh7tyU`_AusMFZ{ej9D;Uyy;SQ!4nwgSnngsYBwdS&EO3NS*o04)*juAYl;57c2Ly0(DEZ8IY?zSph-kyxu+D`tt@oU{32J#I{vmy=#0ySPK zA+i(A3yl)qmTz*$dZi#y9FS;$;h%bY+;StNx{_R56Otq+?pGe^T^{5d7Gs&?`_r`8 zD&dzOA|j8@3A&FR5U3*eQNBf<4^4W_iS_()*8b4aaUzfk2 zzIcMWSEjm;EPZPk{j{1>oXd}pXAj!NaRm8{Sjz!D=~q3WJ@vmt6ND_?HI~|wUS1j5 z9!S1MKr7%nxoJ3k`GB^7yV~*{n~O~n6($~x5Bu{7s|JyXbAyKI4+tO(zZYMslK;Zc zzeHGVl{`iP@jfSKq>R;{+djJ9n%$%EL()Uw+sykjNQdflkJZSjqV_QDWivbZS~S{K zkE@T^Jcv)Dfm93!mf$XYnCT--_A$zo9MOkPB6&diM8MwOfV?+ApNv`moV@nqn>&lv zYbN1-M|jc~sG|yLN^1R2=`+1ih3jCshg`iP&mY$GMTcY^W^T`WOCX!{-KHmZ#GiRH zYl{|+KLn5!PCLtBy~9i}`#d^gCDDx$+GQb~uc;V#K3OgbbOG0j5{BRG-si%Bo{@lB zGIt+Ain8^C`!*S0d0OSWVO+Z89}}O8aFTZ>p&k}2gGCV zh#<$gswePFxWGT$4DC^8@84_e*^KT74?7n8!$8cg=sL$OlKr&HMh@Rr5%*Wr!xoOl zo7jItnj-xYgVTX)H1=A2bD(tleEH57#V{xAeW_ezISg5OC zg=k>hOLA^urTH_e6*vSYRqCm$J{xo}-x3@HH;bsHD1Z`Pzvsn}%cvfw%Q(}h`Dgtb z0_J^niUmoCM5$*f)6}}qi(u;cPgxfyeVaaVmOsG<)5`6tzU4wyhF;k|~|x>7-2hXpVBpc5k{L4M`Wbe6Q?tr^*B z`Y*>6*&R#~%JlBIitlZ^qGe3s21~h3U|&k%%jeMM;6!~UH|+0+<5V-_zDqZQN79?n?!Aj!Nj`YMO9?j>uqI9-Tex+nJD z%e0#Yca6(zqGUR|KITa?9x-#C0!JKJHO(+fy@1!B$%ZwJwncQW7vGYv?~!^`#L~Um zOL++>4qmqW`0Chc0T23G8|vO)tK=Z2`gvS4*qpqhIJCEv9i&&$09VO8YOz|oZ+ubd zNXVdLc&p=KsSgtmIPLN69P7xYkYQ1vJ?u1g)T!6Ru`k2wkdj*wDC)VryGu2=yb0?F z>q~~e>KZ0d_#7f3UgV%9MY1}vMgF{B8yfE{HL*pMyhYF)WDZ^^3vS8F zGlOhs%g_~pS3=WQ#494@jAXwOtr^Y|TnQ5zki>qRG)(oPY*f}U_=ip_{qB0!%w7~G zWE!P4p3khyW-JJnE>eECuYfI?^d366Shq!Wm#x&jAo>=HdCllE$>DPO0N;y#4G)D2y#B@5=N=+F%Xo2n{gKcPcK2!hP*^WSXl+ut; zyLvVoY>VL{H%Kd9^i~lsb8j4>$EllrparEOJNT?Ym>vJa$(P^tOG)5aVb_5w^*&M0 zYOJ`I`}9}UoSnYg#E(&yyK(tqr^@n}qU2H2DhkK-`2He% zgXr_4kpXoQHxAO9S`wEdmqGU4j=1JdG!OixdqB4PPP6RXA}>GM zumruUUH|ZG2$bBj)Qluj&uB=dRb)?^qomw?Z$X%#D+Q*O97eHrgVB2*mR$bFBU`*} zIem?dM)i}raTFDn@5^caxE^XFXVhBePmH9fqcTi`TLaXiueH=@06sl}>F%}h9H_e9 z>^O?LxM1EjX}NVppaO@NNQr=AtHcH-BU{yBT_vejJ#J)l^cl69Z7$sk`82Zyw7Wxt z=~J?hZm{f@W}|96FUJfy65Gk8?^{^yjhOahUMCNNpt5DJw}ZKH7b!bGiFY9y6OY&T z_N)?Jj(MuLTN36ZCJ6I5Xy7uVlrb$o*Z%=-)kPo9s?<^Yqz~!Z* z_mP8(unFq65XSi!$@YtieSQ!<7IEOaA9VkKI?lA`*(nURvfKL8cX}-+~uw9|_5)uC2`ZHcaeX7L8aG6Ghleg@F9aG%X$#g6^yP5apnB>YTz&EfS{q z9UVfSyEIczebC)qlVu5cOoMzS_jrC|)rQlAzK7sfiW0`M8mVIohazPE9Jzn*qPt%6 zZL8RELY@L09B83@Be;x5V-IHnn$}{RAT#<2JA%ttlk#^(%u}CGze|1JY5MPhbfnYG zIw%$XfBmA-<_pKLpGKwbRF$#P;@_)ech#>vj25sv25VM$ouo)?BXdRcO{)*OwTw)G zv43W~T6ekBMtUD%5Bm>`^Ltv!w4~65N!Ut5twl!Agrzyq4O2Fi3pUMtCU~>9gt_=h-f% z;1&OuSu?A_sJvIvQ+dZNo3?m1%b1+s&UAx?8sUHEe_sB7zkm4R%6)<@oYB_i5>3Ip zIA+?jVdX|zL{)?TGpx+=Ta>G80}0}Ax+722$XFNJsC1gcH56{8B)*)eU#r~HrC&}` z|EWW92&;6y;3}!L5zXa385@?-D%>dSvyK;?jqU2t_R3wvBW;$!j45uQ7tyEIQva;Db}r&bR3kqNSh)Q_$MJ#Uj3Gj1F;)sO|%6z#@<+ zi{pbYsYS#u`X$Nf($OS+lhw>xgjos1OnF^$-I$u;qhJswhH~p|ab*nO>zBrtb0ndn zxV0uh!LN`&xckTP+JW}gznSpU492)u+`f{9Yr)js`NmfYH#Wdtradc0TnKNz@Su!e zu$9}G_=ku;%4xk}eXl>)KgpuT>_<`Ud(A^a++K&pm3LbN;gI}ku@YVrA%FJBZ5$;m zobR8}OLtW4-i+qPPLS-(7<>M{)rhiPoi@?&vDeVq5%fmZk=mDdRV>Pb-l7pP1y6|J z8I>sF+TypKV=_^NwBU^>4JJq<*14GLfM2*XQzYdlqqjnE)gZsPW^E@mp&ww* zW9i>XL=uwLVZ9pO*8K>t>vdL~Ek_NUL$?LQi5sc#1Q-f6-ywKcIT8Kw?C(_3pbR`e|)%9S-({if|E+hR2W!&qfQ&UiF^I!|M#xhdWsenv^wpKCBiuxXbnp85`{i|;BM?Ba`lqTA zyRm=UWJl&E{8JzYDHFu>*Z10-?#A8D|5jW9Ho0*CAs0fAy~MqbwYuOq9jjt9*nuHI zbDwKvh)5Ir$r!fS5|;?Dt>V+@F*v8=TJJF)TdnC#Mk>+tGDGCw;A~^PC`gUt*<(|i zB{{g{`uFehu`$fm4)&k7`u{xIV)yvA(%5SxX9MS80p2EKnLtCZ>tlX>*Z6nd&6-Mv$5rHD*db;&IBK3KH&M<+ArlGXDRdX1VVO4)&R$f4NxXI>GBh zSv|h>5GDAI(4E`@F?EnW zS>#c&Gw6~_XL`qQG4bK`W*>hek4LX*efn6|_MY+rXkNyAuu?NxS%L7~9tD3cn7&p( zCtfqe6sjB&Q-Vs7BP5+%;#Gk};4xtwU!KY0XXbmkUy$kR9)!~?*v)qw00!+Yg^#H> zc#8*z6zZo>+(bud?K<*!QO4ehiTCK&PD4G&n)Tr9X_3r-we z?fI+}-G~Yn93gI6F{}Dw_SC*FLZ)5(85zp4%uubtD)J)UELLkvGk4#tw&Tussa)mTD$R2&O~{ zCI3>fr-!-b@EGRI%g0L8UU%%u_<;e9439JNV;4KSxd|78v+I+8^rmMf3f40Jb}wEszROD?xBZu>Ll3;sUIoNxDK3|j3*sam2tC@@e$ z^!;+AK>efeBJB%ALsQ{uFui)oDoq()2USi?n=6C3#eetz?wPswc={I<8x=(8lE4EIsUfyGNZ{|KYn1IR|=E==f z(;!A5(-2y^2xRFCSPqzHAZn5RCN_bp22T(KEtjA(rFZ%>a4@STrHZflxKoqe9Z4@^ zM*scx_y73?Q{vt6?~WEl?2q*;@8 z3M*&@%l)SQmXkcUm)d@GT2#JdzhfSAP9|n#C;$E8X|pwD!r#X?0P>0ZisQ~TNqupW z*lUY~+ikD`vQb?@SAWX#r*Y+;=_|oacL$2CL$^(mV}aKO77pg}O+-=T1oLBT5sL2i z42Qth2+0@C`c+*D0*5!qy26sis<9a7>LN2{z%Qj49t z=L@x`4$ALHb*3COHoT?5S_c(Hs}g!V>W^=6Q0}zaubkDn)(lTax0+!+%B}9Vqw6{H zvL|BRM`O<@;eVi1DzM!tXtBrA20Ce@^Jz|>%X-t`vi-%WweXCh_LhI#bUg2*pcP~R z*RuTUzBKLXO~~uMd&o$v3@d0shHfUjC6c539PE6rF&;Ufa(Rw@K1*m7?f5)t`MjH0 z)_V(cajV5Am>f!kWcI@5rE8t6$S>5M=k=aRZROH6fA^jJp~2NlR4;Q2>L$7F#RT#9 z>4@1RhWG`Khy>P2j1Yx^BBL{S`niMaxlSWV-JBU0-T9zZ%>7mR3l$~QV$({o0;jTI ze5=cN^!Bc2bT|BcojXp~K#2cM>OTe*cM{Kg-j*CkiW)EGQot^}s;cy8_1_@JA0Whq zlrNr+R;Efa+`6N)s5rH*|E)nYZ3uqkk2C(E7@A|3YI`ozP~9Lexx#*1(r8luq+YPk z{J}c$s` zPM35Fx(YWB3Z5IYnN+L_4|jaR(5iWJi2~l&xy}aU7kW?o-V*6Av2wyZTG!E2KSW2* zGRLQkQU;Oz##ie-Z4fI)WSRxn$(ZcD;TL+;^r=a4(G~H3ZhK$lSXZj?cvyY8%d9JM zzc3#pD^W_QnWy#rx#;c&N@sqHhrnHRmj#i;s%zLm6SE(n&BWpd&f7>XnjV}OlZntI70fq%8~9<7 zMYaw`E-rp49-oC1N_uZTo)Cu%RR2QWdHpzQIcNsoDp`3xfP+`gI?tVQZ4X={qU?(n zV>0ASES^Xuc;9JBji{)RnFL(Lez;8XbB1uWaMp@p?7xhXk6V#!6B@aP4Rz7-K%a>i z?fvf}va_DGUXlI#4--`A3qK7J?-HwnG7O~H2;zR~RLW)_^#La!=}+>KW#anZ{|^D3 B7G?kd literal 0 HcmV?d00001 diff --git a/dependency-check-core/img/glyphicons-halflings.png b/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/dependency-check-core/index.html b/dependency-check-core/index.html new file mode 100644 index 000000000..ab597c58c --- /dev/null +++ b/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/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js b/dependency-check-core/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/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/dependency-check-core/plugin-updates-report.html b/dependency-check-core/plugin-updates-report.html new file mode 100644 index 000000000..7c5612a3f --- /dev/null +++ b/dependency-check-core/plugin-updates-report.html @@ -0,0 +1,860 @@ + + + + + + + + + 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 available5
    # 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 update8
    # of plugins where the next version available is a major version update0
    # of plugins where a dependencies section containes a dependency with an updated version0
    +
    +

    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.7
    org.apache.maven.pluginsmaven-enforcer-plugin1.01.0.11.1
    org.apache.maven.pluginsmaven-failsafe-plugin2.142.14.12.15
    org.apache.maven.pluginsmaven-gpg-plugin1.4
    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.2
    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
    +
    +

    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 No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    +
    +

    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
    +
    +

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

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

    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
    +
    +

    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 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.4jar
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

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

    + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    +
    +

    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
    +
    +

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

    + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.codehaus.mojo
    Artifact Idcobertura-maven-plugin
    Current Version2.5.2
    + + + + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/pmd.html b/dependency-check-core/pmd.html new file mode 100644 index 000000000..6c1224df1 --- /dev/null +++ b/dependency-check-core/pmd.html @@ -0,0 +1,473 @@ + + + + + + + + + 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/DependencyBundlingAnalyzer.java

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

    org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.java

    + + + + + + + + + +
    ViolationLine
    These nested if statements could be combined152 - 171
    Avoid empty if statements156 - 158
    +
    +

    org/owasp/dependencycheck/analyzer/JarAnalyzer.java

    + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.337
    Useless parentheses.825
    Avoid unused method parameters such as 'classes'.963
    +
    +

    org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.java

    + + + + + + +
    ViolationLine
    Avoid unused local variables such as 'extractComments'.99
    +
    +

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

    + + + + + + + + + + + + + + + + + + +
    ViolationLine
    Useless parentheses.132
    Useless parentheses.211
    These nested if statements could be combined579 - 584
    These nested if statements could be combined580 - 583
    These nested if statements could be combined589 - 592
    +
    +

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

    + + + + + + +
    ViolationLine
    These nested if statements could be combined71 - 73
    +
    +

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

    + + + + + + + + + +
    ViolationLine
    Useless parentheses.171
    Useless parentheses.174
    +
    +

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

    + + + + + + + + + +
    ViolationLine
    These nested if statements could be combined528 - 530
    Useless parentheses.675
    +
    +

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

    + + + + + + +
    ViolationLine
    Useless parentheses.79
    +
    +

    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/utils/Checksum.java

    + + + + + + +
    ViolationLine
    Useless parentheses.103
    +
    +

    org/owasp/dependencycheck/utils/DependencyVersion.java

    + + + + + + + + + +
    ViolationLine
    Useless parentheses.138
    Useless parentheses.198
    +
    +

    org/owasp/dependencycheck/utils/Downloader.java

    + + + + + + +
    ViolationLine
    Useless parentheses.119
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/project-info.html b/dependency-check-core/project-info.html new file mode 100644 index 000000000..a80b5fe54 --- /dev/null +++ b/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/dependency-check-core/project-reports.html b/dependency-check-core/project-reports.html new file mode 100644 index 000000000..62584cd49 --- /dev/null +++ b/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/dependency-check-core/project-summary.html b/dependency-check-core/project-summary.html new file mode 100644 index 000000000..cb61c5dbe --- /dev/null +++ b/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.1
    Typejar
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/surefire-report.html b/dependency-check-core/surefire-report.html new file mode 100644 index 000000000..f7a1185ae --- /dev/null +++ b/dependency-check-core/surefire-report.html @@ -0,0 +1,1151 @@ + + + + + + + + + dependency-check-core - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    95000100%14.225

    +

    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.data.nvdcve.xml2000100%0.326
    org.owasp.dependencycheck.reporting1000100%0
    org.owasp.dependencycheck.data.cwe1000100%0.024
    org.owasp.dependencycheck.dependency23000100%0.002
    org.owasp.dependencycheck.utils27000100%0.001
    org.owasp.dependencycheck.analyzer20000100%7.447
    org.owasp.dependencycheck.data.nvdcve3000100%0.998
    org.owasp.dependencycheck.data.lucene10000100%0.833
    org.owasp.dependencycheck.data.cpe8000100%4.594

    +

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

    +
    +

    org.owasp.dependencycheck.data.nvdcve.xml

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    NvdCve_1_2_HandlerTest1000100%0.085
    NvdCve_2_0_HandlerTest1000100%0.241
    +
    +

    org.owasp.dependencycheck.reporting

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    ReportGeneratorTest1000100%0
    +
    +

    org.owasp.dependencycheck.data.cwe

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CweDBTest1000100%0.024
    +
    +

    org.owasp.dependencycheck.dependency

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DependencyTest20000100%0.002
    VulnerableSoftwareTest3000100%0
    +
    +

    org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    ChecksumTest6000100%0
    DependencyVersionTest7000100%0.001
    DependencyVersionUtilTest1000100%0
    FileUtilsTest2000100%0
    FilterTest2000100%0
    SettingsTest9000100%0
    +
    +

    org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    AbstractAnalyzerTest1000100%0.011
    AnalyzerServiceTest1000100%0.447
    ArchiveAnalyzerTest6000100%5.501
    FileNameAnalyzerTest7000100%0.073
    JarAnalyzerTest5000100%1.415
    +
    +

    org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CveDBTest3000100%0.998
    +
    +

    org.owasp.dependencycheck.data.lucene

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    FieldAnalyzerTest1000100%0.091
    LuceneUtilsTest4000100%0
    TokenPairConcatenatingFilterTest2000100%0.057
    UrlTokenizingFilterTest3000100%0.685
    +
    +

    org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    CPEAnalyzerTest5000100%4.594
    IndexEntryTest1000100%0
    IndexTest2000100%0

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    AbstractAnalyzerTest

    + + + + +
    testNewHashSet0.011
    +
    +

    AnalyzerServiceTest

    + + + + +
    testGetAnalyzers0.447
    +
    +

    ArchiveAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + + + + + +
    testAnalyze5.499
    testGetAnalysisPhase0
    testGetName0.001
    testInitialize0.001
    testSupportsExtension0
    testGetSupportedExtensions0
    +
    +

    FileNameAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testAnalyze0.072
    testClose0
    testGetAnalysisPhase0.001
    testGetName0
    testInitialize0
    testSupportsExtension0
    testGetSupportedExtensions0
    +
    +

    JarAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + +
    testAnalyze0.459
    testGetName0.21
    testInterpolateString0.229
    testSupportsExtension0.227
    testGetSupportedExtensions0.29
    +
    +

    CPEAnalyzerTest

    + + + + + + + + + + + + + + + + + + + + +
    testSearchCPE0.663
    testDetermineCPE1.525
    testOpen0.12
    testDetermineCPE_full2.284
    testBuildSearch0.002
    +
    +

    IndexEntryTest

    + + + + +
    testSetName0
    +
    +

    IndexTest

    + + + + + + + + +
    testOpen0
    testGetDirectory0
    +
    +

    CweDBTest

    + + + + +
    testGetCweName0.024
    +
    +

    FieldAnalyzerTest

    + + + + +
    testAnalyzers0.091
    +
    +

    LuceneUtilsTest

    + + + + + + + + + + + + + + + + +
    testAppendEscapedLuceneQuery0
    testEscapeLuceneQuery0
    testEscapeLuceneQuery_null0
    testAppendEscapedLuceneQuery_null0
    +
    +

    TokenPairConcatenatingFilterTest

    + + + + + + + + +
    testExamples0.047
    testClear0.01
    +
    +

    UrlTokenizingFilterTest

    + + + + + + + + + + + + +
    testRandomStrings0.666
    testEmptyTerm0.008
    testExamples0.011
    +
    +

    CveDBTest

    + + + + + + + + + + + + +
    testOpen0.068
    testGetCPEs0.133
    testGetVulnerabilities0.797
    +
    +

    NvdCve_1_2_HandlerTest

    + + + + +
    testParse0.085
    +
    +

    NvdCve_2_0_HandlerTest

    + + + + +
    testParse0.241
    +
    +

    DependencyTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testGetEvidenceUsed0
    testGetSha1sum0
    testGetProductEvidence0
    testGetActualFilePath0
    testSetFileExtension0
    testGetIdentifiers0
    testSetSha1sum0
    testAddIdentifier0
    testGetVendorEvidence0
    testSetFileName0.002
    testSetFilePath0
    testGetFileName0
    testGetFilePath0
    testGetFileExtension0
    testSetMd5sum0
    testGetMd5sum0
    testGetEvidence0
    testSetIdentifiers0
    testGetVersionEvidence0
    testSetActualFilePath0
    +
    +

    VulnerableSoftwareTest

    + + + + + + + + + + + + +
    testCompareTo0
    testHashCode0
    testEquals0
    +
    +

    ReportGeneratorTest

    + + + + +
    testGenerateReport0
    +
    +

    ChecksumTest

    + + + + + + + + + + + + + + + + + + + + + + + + +
    testGetChecksum_NoSuchAlgorithm0
    testGetChecksum0
    testGetMD5Checksum0
    testGetChecksum_FileNotFound0
    testGetHex0
    testGetSHA1Checksum0
    +
    +

    DependencyVersionTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testMatchesAtLeastThreeLevels0
    testToString0
    testCompareTo0
    testParseVersion0
    testHashCode0
    testEquals0.001
    testIterator0
    +
    +

    DependencyVersionUtilTest

    + + + + +
    testParseVersionFromFileName0
    +
    +

    FileUtilsTest

    + + + + + + + + +
    testGetFileExtension0
    testDelete0
    +
    +

    FilterTest

    + + + + + + + + +
    testFilter_Iterable0
    testPasses0
    +
    +

    SettingsTest

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    testMergeProperties_String0
    testGetFile0
    testGetLong0
    testGetBoolean0
    testSetString0
    testGetInt0
    testGetString_String0
    testGetString0
    testGetString_String_String0

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/taglist.html b/dependency-check-core/taglist.html new file mode 100644 index 000000000..5ac7b69d8 --- /dev/null +++ b/dependency-check-core/taglist.html @@ -0,0 +1,383 @@ + + + + + + + + + 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 Work28todo, FIXME
    +

    Each tag is detailed below:

    +
    +

    Todo Work

    +

    Number of occurrences found in the code: 28

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.analyzer.ArchiveAnalyzerLine
    - can we get more evidence from the parent? EAR contains module name, etc.204
    org.owasp.dependencycheck.analyzer.DependencyBundlingAnalyzerLine
    - consider splitting on /\._-\s/ and checking if all of one side is fully contained in the other With the exception of the word "core". This might work even on groups when we don't have a CVE.302
    should we be splitting the name on [-_(.\d)+] and seeing if the parts are contained in the other side?320
    org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzerLine
    fix the version problem below150
    - can we utilize the pom's groupid and artifactId to filter??? most of these are due to low quality data. Other idea would be to say any CPE found based on LOW confidence evidence should have a different CPE type? (this might be a better solution then just removing the URL for "best-guess" matches).260
    move this startswith expression to a configuration file?271
    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;968
    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;975
    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;990
    org.owasp.dependencycheck.data.cpe.CPEAnalyzerLine
    - likely need to change the split... not sure if this will work for CPE with special chars441
    the following isn't quite right is it? need to think about this guessing game a bit more.576
    org.owasp.dependencycheck.data.cpe.CPEAnalyzerTestLine
    - yeah, not a very good test as the results are the same with or without weighting...240
    fix this assert Assert.assertEquals(expResult, result.get(0).getName());248
    org.owasp.dependencycheck.data.cpe.IndexTestLine
    research why are we getting multiple documents for the same documentId. is the update method not working? try { instance.createSearchingAnalyzer(); TopDocs docs = instance.search("product:( project\\-open )", 20); for (ScoreDoc d : docs.scoreDocs) { final Document doc = instance.getDocument(d.doc); String vendor = doc.getField(Fields.VENDOR).stringValue(); String product = doc.getField(Fields.PRODUCT).stringValue(); System.out.print(d.doc); System.out.print(" : "); System.out.print(vendor + ":"); System.out.println(product); } } catch (ParseException ex) { Logger.getLogger(IndexTest.class.getName()).log(Level.SEVERE, null, ex); }68
    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.TokenPairConcatenatingFilterTestLine
    figure outwhy I am getting "Failed: incrementtoken() called while in wrong state" String[] expected = new String[3]; expected[0] = "one"; expected[1] = "onetwo"; expected[2] = "two"; checkOneTerm(analyzer, "one", "one"); assertAnalyzesTo(analyzer, "two", new String[]{"onetwo", "two"}); checkOneTerm(analyzer, "two", "onetwo"); checkOneTerm(analyzer, "three", "two");63
    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
    - make it so we can exteralize the database (lucene index is a problem), could I store it as a blob and just download it when needed?166
    consider utilizing the matchThreeVersion method to get additional results. However, this might also introduce false positives.685
    org.owasp.dependencycheck.data.nvdcve.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); // } // }111
    - 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; // }170
    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; // }188
    FIX THIS // //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2'; // //hasStruts1Vuln |= vs.getName().charAt(21) == '1'; // } // if (!hasStruts1Vuln && hasStruts2PreviousVersion) { // return false; // } // } // // return true; // }212
    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
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-core/xref-test/allclasses-frame.html b/dependency-check-core/xref-test/allclasses-frame.html new file mode 100644 index 000000000..e0e3e7156 --- /dev/null +++ b/dependency-check-core/xref-test/allclasses-frame.html @@ -0,0 +1,110 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-core/xref-test/index.html b/dependency-check-core/xref-test/index.html new file mode 100644 index 000000000..e08a3b6b6 --- /dev/null +++ b/dependency-check-core/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html new file mode 100644 index 000000000..44f188fcf --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/EngineIntegrationTest.html @@ -0,0 +1,84 @@ + + + + +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          org.owasp.dependencycheck.data.cpe.BaseIndexTestCase.ensureIndexExists();
    +48      }
    +49  
    +50      @After
    +51      public void tearDown() {
    +52      }
    +53  
    +54      /**
    +55       * Test of scan method, of class Engine.
    +56       *
    +57       * @throws Exception is thrown when an exception occurs.
    +58       */
    +59      @Test
    +60      public void testScan() throws Exception {
    +61          String path = "target/test-classes";
    +62          Engine instance = new Engine();
    +63          instance.scan(path);
    +64          assertTrue(instance.getDependencies().size() > 0);
    +65          instance.analyzeDependencies();
    +66          ReportGenerator rg = new ReportGenerator("DependencyCheck",
    +67                  instance.getDependencies(), instance.getAnalyzers());
    +68          rg.generateReports("./target/", "HTML");
    +69      }
    +70  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AbstractAnalyzerTest.html new file mode 100644 index 000000000..4091c0be0 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/AnalyzerServiceTest.html new file mode 100644 index 000000000..637f516b6 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html new file mode 100644 index 000000000..3eb12215d --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/ArchiveAnalyzerTest.html @@ -0,0 +1,171 @@ + + + + +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.dependency.Dependency;
    +32  import org.owasp.dependencycheck.utils.Settings;
    +33  
    +34  /**
    +35   *
    +36   * @author Jeremy Long (jeremy.long@owasp.org)
    +37   */
    +38  public class ArchiveAnalyzerTest {
    +39  
    +40      public ArchiveAnalyzerTest() {
    +41      }
    +42  
    +43      @BeforeClass
    +44      public static void setUpClass() {
    +45      }
    +46  
    +47      @AfterClass
    +48      public static void tearDownClass() {
    +49      }
    +50  
    +51      @Before
    +52      public void setUp() {
    +53      }
    +54  
    +55      @After
    +56      public void tearDown() {
    +57      }
    +58  
    +59      /**
    +60       * Test of getSupportedExtensions method, of class ArchiveAnalyzer.
    +61       */
    +62      @Test
    +63      public void testGetSupportedExtensions() {
    +64          ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +65          Set expResult = new HashSet<String>();
    +66          expResult.add("zip");
    +67          expResult.add("war");
    +68          expResult.add("ear");
    +69          Set result = instance.getSupportedExtensions();
    +70          assertEquals(expResult, result);
    +71      }
    +72  
    +73      /**
    +74       * Test of getName method, of class ArchiveAnalyzer.
    +75       */
    +76      @Test
    +77      public void testGetName() {
    +78          ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +79          String expResult = "Archive Analyzer";
    +80          String result = instance.getName();
    +81          assertEquals(expResult, result);
    +82      }
    +83  
    +84      /**
    +85       * Test of supportsExtension method, of class ArchiveAnalyzer.
    +86       */
    +87      @Test
    +88      public void testSupportsExtension() {
    +89          String extension = "tar"; //not supported
    +90          ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +91          boolean expResult = false;
    +92          boolean result = instance.supportsExtension(extension);
    +93          assertEquals(expResult, result);
    +94  
    +95          extension = "war"; //supported
    +96          expResult = true;
    +97          result = instance.supportsExtension(extension);
    +98          assertEquals(expResult, result);
    +99  
    +100         extension = "ear"; //supported
    +101         result = instance.supportsExtension(extension);
    +102         assertEquals(expResult, result);
    +103 
    +104         extension = "zip"; //supported
    +105         result = instance.supportsExtension(extension);
    +106         assertEquals(expResult, result);
    +107     }
    +108 
    +109     /**
    +110      * Test of getAnalysisPhase method, of class ArchiveAnalyzer.
    +111      */
    +112     @Test
    +113     public void testGetAnalysisPhase() {
    +114         ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +115         AnalysisPhase expResult = AnalysisPhase.INITIAL;
    +116         AnalysisPhase result = instance.getAnalysisPhase();
    +117         assertEquals(expResult, result);
    +118     }
    +119 
    +120     /**
    +121      * Test of initialize and close methods, of class ArchiveAnalyzer.
    +122      */
    +123     @Test
    +124     public void testInitialize() throws Exception {
    +125         ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +126         instance.initialize();
    +127 
    +128         instance.close();
    +129 
    +130         //no exception means things worked.
    +131     }
    +132 
    +133     /**
    +134      * Test of analyze method, of class ArchiveAnalyzer.
    +135      */
    +136     @Test
    +137     public void testAnalyze() throws Exception {
    +138         ArchiveAnalyzer instance = new ArchiveAnalyzer();
    +139         try {
    +140             instance.initialize();
    +141 
    +142             File file = new File(this.getClass().getClassLoader().getResource("opensso.war").getPath());
    +143             Dependency dependency = new Dependency(file);
    +144             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, false);
    +145             Engine engine = new Engine();
    +146 
    +147             int initial_size = engine.getDependencies().size();
    +148             instance.analyze(dependency, engine);
    +149             int ending_size = engine.getDependencies().size();
    +150 
    +151             assertTrue(initial_size < ending_size);
    +152 
    +153         } finally {
    +154             instance.close();
    +155         }
    +156     }
    +157 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/FileNameAnalyzerTest.html new file mode 100644 index 000000000..36806eef2 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html new file mode 100644 index 000000000..5870b3d8b --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/JarAnalyzerTest.html @@ -0,0 +1,173 @@ + + + + +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         Set result = instance.getSupportedExtensions();
    +122         assertEquals(expResult, result);
    +123     }
    +124 
    +125     /**
    +126      * Test of getName method, of class JarAnalyzer.
    +127      */
    +128     @Test
    +129     public void testGetName() {
    +130         JarAnalyzer instance = new JarAnalyzer();
    +131         String expResult = "Jar Analyzer";
    +132         String result = instance.getName();
    +133         assertEquals(expResult, result);
    +134     }
    +135 
    +136     /**
    +137      * Test of supportsExtension method, of class JarAnalyzer.
    +138      */
    +139     @Test
    +140     public void testSupportsExtension() {
    +141         String extension = "jar";
    +142         JarAnalyzer instance = new JarAnalyzer();
    +143         boolean expResult = true;
    +144         boolean result = instance.supportsExtension(extension);
    +145         assertEquals(expResult, result);
    +146     }
    +147 
    +148     @Test
    +149     public void testInterpolateString() {
    +150         Properties prop = new Properties();
    +151         prop.setProperty("key", "value");
    +152         prop.setProperty("nested", "nested ${key}");
    +153         String text = "This is a test of '${key}' '${nested}'";
    +154         String expResults = "This is a test of 'value' 'nested value'";
    +155         JarAnalyzer instance = new JarAnalyzer();
    +156         String results = instance.interpolateString(text, prop);
    +157         assertEquals(expResults, results);
    +158     }
    +159 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..aeb6c99e3 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,36 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.analyzer + + + + +

    + org.owasp.dependencycheck.analyzer +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..f9eb7cc59 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,87 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.analyzer + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractAnalyzerTest +
    + AnalyzerServiceTest +
    + ArchiveAnalyzerTest +
    + FileNameAnalyzerTest +
    + JarAnalyzerTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html new file mode 100644 index 000000000..978d1acef --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/BaseIndexTestCase.html @@ -0,0 +1,153 @@ + + + + +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 java.io.BufferedInputStream;
    +22  import java.io.BufferedOutputStream;
    +23  import java.io.File;
    +24  import java.io.FileInputStream;
    +25  import java.io.FileOutputStream;
    +26  import java.io.IOException;
    +27  import java.util.logging.Level;
    +28  import java.util.logging.Logger;
    +29  import java.util.zip.ZipEntry;
    +30  import java.util.zip.ZipInputStream;
    +31  import org.junit.After;
    +32  import org.junit.AfterClass;
    +33  import org.junit.Before;
    +34  import org.junit.BeforeClass;
    +35  import org.owasp.dependencycheck.data.nvdcve.BaseDBTestCase;
    +36  import org.owasp.dependencycheck.utils.Settings;
    +37  
    +38  /**
    +39   *
    +40   * @author Jeremy Long (jeremy.long@owasp.org)
    +41   */
    +42  public abstract class BaseIndexTestCase {
    +43  
    +44      protected static final int BUFFER_SIZE = 2048;
    +45  
    +46      @BeforeClass
    +47      public static void setUpClass() throws Exception {
    +48      }
    +49  
    +50      @AfterClass
    +51      public static void tearDownClass() throws Exception {
    +52      }
    +53  
    +54      @Before
    +55      public void setUp() throws Exception {
    +56          ensureIndexExists();
    +57          BaseDBTestCase.ensureDBExists();
    +58      }
    +59  
    +60      @After
    +61      public void tearDown() throws Exception {
    +62      }
    +63  
    +64      protected static File getDataDirectory() throws IOException {
    +65          final String fileName = Settings.getString(Settings.KEYS.CPE_DATA_DIRECTORY);
    +66          final String dataDirectory = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +67          return new File(dataDirectory, fileName);
    +68          //return FileUtils.getDataDirectory(fileName, Index.class);
    +69      }
    +70  
    +71      public static void ensureIndexExists() throws Exception {
    +72          //String indexPath = Settings.getString(Settings.KEYS.CPE_DATA_DIRECTORY);
    +73          String indexPath = getDataDirectory().getCanonicalPath();
    +74          java.io.File f = new File(indexPath);
    +75  
    +76          if (!f.exists() || (f.isDirectory() && f.listFiles().length == 0)) {
    +77              f.mkdirs();
    +78              FileInputStream fis = null;
    +79              ZipInputStream zin = null;
    +80              try {
    +81                  File path = new File(BaseIndexTestCase.class.getClassLoader().getResource("index.cpe.zip").getPath());
    +82                  fis = new FileInputStream(path);
    +83                  zin = new ZipInputStream(new BufferedInputStream(fis));
    +84                  ZipEntry entry;
    +85                  while ((entry = zin.getNextEntry()) != null) {
    +86                      if (entry.isDirectory()) {
    +87                          continue;
    +88                      }
    +89                      FileOutputStream fos = null;
    +90                      BufferedOutputStream dest = null;
    +91                      try {
    +92                          File o = new File(indexPath, entry.getName());
    +93                          o.createNewFile();
    +94                          fos = new FileOutputStream(o, false);
    +95                          dest = new BufferedOutputStream(fos, BUFFER_SIZE);
    +96                          byte data[] = new byte[BUFFER_SIZE];
    +97                          int count;
    +98                          while ((count = zin.read(data, 0, BUFFER_SIZE)) != -1) {
    +99                              dest.write(data, 0, count);
    +100                         }
    +101                     } catch (Exception ex) {
    +102                         Logger.getLogger(BaseIndexTestCase.class.getName()).log(Level.FINEST, null, ex);
    +103                     } finally {
    +104                         if (dest != null) {
    +105                             try {
    +106                                 dest.flush();
    +107                                 dest.close();
    +108                             } catch (Throwable ex) {
    +109                                 Logger.getLogger(BaseIndexTestCase.class.getName()).log(Level.FINEST, null, ex);
    +110                             }
    +111                         }
    +112                         if (fos != null) {
    +113                             try {
    +114                                 fos.close();
    +115                             } catch (Throwable ex) {
    +116                                 Logger.getLogger(BaseIndexTestCase.class.getName()).log(Level.FINEST, null, ex);
    +117                             }
    +118                         }
    +119                     }
    +120                 }
    +121             } finally {
    +122                 try {
    +123                     if (zin != null) {
    +124                         zin.close();
    +125                     }
    +126                 } catch (Throwable ex) {
    +127                     Logger.getLogger(BaseIndexTestCase.class.getName()).log(Level.FINEST, null, ex);
    +128                 }
    +129                 try {
    +130                     if (fis != null) {
    +131                         fis.close();
    +132                     }
    +133                 } catch (Throwable ex) {
    +134                     Logger.getLogger(BaseIndexTestCase.class.getName()).log(Level.FINEST, null, ex);
    +135                 }
    +136             }
    +137         }
    +138     }
    +139 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/CPEAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/CPEAnalyzerTest.html new file mode 100644 index 000000000..97a6e17fe --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/CPEAnalyzerTest.html @@ -0,0 +1,268 @@ + + + + +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.data.cpe;
    +20  
    +21  import org.owasp.dependencycheck.data.cpe.IndexEntry;
    +22  import org.owasp.dependencycheck.data.cpe.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.owasp.dependencycheck.analyzer.JarAnalyzer;
    +34  import org.junit.Assert;
    +35  import org.junit.Before;
    +36  import org.junit.BeforeClass;
    +37  import org.junit.Test;
    +38  import org.owasp.dependencycheck.analyzer.FalsePositiveAnalyzer;
    +39  import org.owasp.dependencycheck.analyzer.FileNameAnalyzer;
    +40  import org.owasp.dependencycheck.analyzer.HintAnalyzer;
    +41  import static org.owasp.dependencycheck.data.cpe.BaseIndexTestCase.ensureIndexExists;
    +42  import org.owasp.dependencycheck.dependency.Identifier;
    +43  
    +44  /**
    +45   *
    +46   * @author Jeremy Long (jeremy.long@owasp.org)
    +47   */
    +48  public class CPEAnalyzerTest extends BaseIndexTestCase {
    +49  
    +50      @BeforeClass
    +51      public static void setUpClass() throws Exception {
    +52      }
    +53  
    +54      @AfterClass
    +55      public static void tearDownClass() throws Exception {
    +56      }
    +57  
    +58      @Before
    +59      public void setUp() throws Exception {
    +60          super.setUp();
    +61      }
    +62  
    +63      @After
    +64      public void tearDown() throws Exception {
    +65          super.tearDown();
    +66      }
    +67  
    +68      /**
    +69       * Tests of buildSearch of class CPEAnalyzer.
    +70       *
    +71       * @throws IOException is thrown when an IO Exception occurs.
    +72       * @throws CorruptIndexException is thrown when the index is corrupt.
    +73       * @throws ParseException is thrown when a parse exception occurs
    +74       */
    +75      @Test
    +76      public void testBuildSearch() throws IOException, CorruptIndexException, ParseException {
    +77          Set<String> productWeightings = new HashSet<String>(1);
    +78          productWeightings.add("struts2");
    +79  
    +80          Set<String> vendorWeightings = new HashSet<String>(1);
    +81          vendorWeightings.add("apache");
    +82  
    +83          String vendor = "apache software foundation";
    +84          String product = "struts 2 core";
    +85          String version = "2.1.2";
    +86          CPEAnalyzer instance = new CPEAnalyzer();
    +87  
    +88          String queryText = instance.buildSearch(vendor, product, null, null);
    +89          String expResult = " product:( struts 2 core )  AND  vendor:( apache software foundation ) ";
    +90          Assert.assertTrue(expResult.equals(queryText));
    +91  
    +92          queryText = instance.buildSearch(vendor, product, null, productWeightings);
    +93          expResult = " product:(  struts^5 struts2^5 2 core )  AND  vendor:( apache software foundation ) ";
    +94          Assert.assertTrue(expResult.equals(queryText));
    +95  
    +96          queryText = instance.buildSearch(vendor, product, vendorWeightings, null);
    +97          expResult = " product:( struts 2 core )  AND  vendor:(  apache^5 software foundation ) ";
    +98          Assert.assertTrue(expResult.equals(queryText));
    +99  
    +100         queryText = instance.buildSearch(vendor, product, vendorWeightings, productWeightings);
    +101         expResult = " product:(  struts^5 struts2^5 2 core )  AND  vendor:(  apache^5 software foundation ) ";
    +102         Assert.assertTrue(expResult.equals(queryText));
    +103     }
    +104 
    +105     /**
    +106      * Test of open method, of class CPEAnalyzer.
    +107      *
    +108      * @throws Exception is thrown when an exception occurs
    +109      */
    +110     @Test
    +111     public void testOpen() throws Exception {
    +112         CPEAnalyzer instance = new CPEAnalyzer();
    +113         Assert.assertFalse(instance.isOpen());
    +114         instance.open();
    +115         Assert.assertTrue(instance.isOpen());
    +116         instance.close();
    +117         Assert.assertFalse(instance.isOpen());
    +118     }
    +119 
    +120     /**
    +121      * Test of determineCPE method, of class CPEAnalyzer.
    +122      *
    +123      * @throws Exception is thrown when an exception occurs
    +124      */
    +125     @Test
    +126     public void testDetermineCPE_full() throws Exception {
    +127         callDetermineCPE_full("spring-context-support-2.5.5.jar", "cpe:/a:vmware:springsource_spring_framework:2.5.5");
    +128         callDetermineCPE_full("spring-core-3.0.0.RELEASE.jar", "cpe:/a:vmware:springsource_spring_framework:3.0.0");
    +129         callDetermineCPE_full("org.mortbay.jetty.jar", "cpe:/a:mortbay_jetty:jetty:4.2");
    +130         callDetermineCPE_full("jaxb-xercesImpl-1.5.jar", null);
    +131         callDetermineCPE_full("ehcache-core-2.2.0.jar", null);
    +132     }
    +133 
    +134     /**
    +135      * Test of determineCPE method, of class CPEAnalyzer.
    +136      *
    +137      * @throws Exception is thrown when an exception occurs
    +138      */
    +139     public void callDetermineCPE_full(String depName, String expResult) throws Exception {
    +140 
    +141         File file = new File(this.getClass().getClassLoader().getResource(depName).getPath());
    +142         Dependency dep = new Dependency(file);
    +143 
    +144         FileNameAnalyzer fnAnalyzer = new FileNameAnalyzer();
    +145         fnAnalyzer.analyze(dep, null);
    +146 
    +147         JarAnalyzer jarAnalyzer = new JarAnalyzer();
    +148         jarAnalyzer.analyze(dep, null);
    +149         HintAnalyzer hAnalyzer = new HintAnalyzer();
    +150         hAnalyzer.analyze(dep, null);
    +151 
    +152 
    +153         CPEAnalyzer instance = new CPEAnalyzer();
    +154         instance.open();
    +155         instance.analyze(dep, null);
    +156         instance.close();
    +157         FalsePositiveAnalyzer fp = new FalsePositiveAnalyzer();
    +158         fp.analyze(dep, null);
    +159 
    +160 //        for (Identifier i : dep.getIdentifiers()) {
    +161 //            System.out.println(i.getValue());
    +162 //        }
    +163         if (expResult != null) {
    +164             Identifier expIdentifier = new Identifier("cpe", expResult, expResult);
    +165             Assert.assertTrue("Incorrect match: { dep:'" + dep.getFileName() + "' }", dep.getIdentifiers().contains(expIdentifier));
    +166         } else {
    +167             Assert.assertTrue("Match found when an Identifier should not have been found: { dep:'" + dep.getFileName() + "' }", dep.getIdentifiers().isEmpty());
    +168         }
    +169     }
    +170 
    +171     /**
    +172      * Test of determineCPE method, of class CPEAnalyzer.
    +173      *
    +174      * @throws Exception is thrown when an exception occurs
    +175      */
    +176     @Test
    +177     public void testDetermineCPE() throws Exception {
    +178         File file = new File(this.getClass().getClassLoader().getResource("struts2-core-2.1.2.jar").getPath());
    +179         //File file = new File(this.getClass().getClassLoader().getResource("axis2-adb-1.4.1.jar").getPath());
    +180         Dependency struts = new Dependency(file);
    +181 
    +182         FileNameAnalyzer fnAnalyzer = new FileNameAnalyzer();
    +183         fnAnalyzer.analyze(struts, null);
    +184 
    +185         JarAnalyzer jarAnalyzer = new JarAnalyzer();
    +186         jarAnalyzer.analyze(struts, null);
    +187 
    +188 
    +189         File fileCommonValidator = new File(this.getClass().getClassLoader().getResource("commons-validator-1.4.0.jar").getPath());
    +190         Dependency commonValidator = new Dependency(fileCommonValidator);
    +191         jarAnalyzer.analyze(commonValidator, null);
    +192 
    +193         File fileSpring = new File(this.getClass().getClassLoader().getResource("spring-core-2.5.5.jar").getPath());
    +194         Dependency spring = new Dependency(fileSpring);
    +195         jarAnalyzer.analyze(spring, null);
    +196 
    +197         File fileSpring3 = new File(this.getClass().getClassLoader().getResource("spring-core-3.0.0.RELEASE.jar").getPath());
    +198         Dependency spring3 = new Dependency(fileSpring3);
    +199         jarAnalyzer.analyze(spring3, null);
    +200 
    +201         CPEAnalyzer instance = new CPEAnalyzer();
    +202         instance.open();
    +203         instance.determineCPE(commonValidator);
    +204         instance.determineCPE(struts);
    +205         instance.determineCPE(spring);
    +206         instance.determineCPE(spring3);
    +207         instance.close();
    +208 
    +209         String expResult = "cpe:/a:apache:struts:2.1.2";
    +210         Identifier expIdentifier = new Identifier("cpe", expResult, expResult);
    +211         String expResultSpring = "cpe:/a:springsource:spring_framework:2.5.5";
    +212         String expResultSpring3 = "cpe:/a:vmware:springsource_spring_framework:3.0.0";
    +213 
    +214         Assert.assertTrue("Apache Common Validator - found an identifier?", commonValidator.getIdentifiers().isEmpty());
    +215         Assert.assertTrue("Incorrect match size - struts", struts.getIdentifiers().size() >= 1);
    +216         Assert.assertTrue("Incorrect match - struts", struts.getIdentifiers().contains(expIdentifier));
    +217         Assert.assertTrue("Incorrect match size - spring3 - " + spring3.getIdentifiers().size(), spring3.getIdentifiers().size() >= 1);
    +218 
    +219         //the following two only work if the HintAnalyzer is used.
    +220         //Assert.assertTrue("Incorrect match size - spring", spring.getIdentifiers().size() == 1);
    +221         //Assert.assertTrue("Incorrect match - spring", spring.getIdentifiers().get(0).getValue().equals(expResultSpring));
    +222 
    +223     }
    +224 
    +225     /**
    +226      * Test of searchCPE method, of class CPEAnalyzer.
    +227      *
    +228      * @throws Exception is thrown when an exception occurs
    +229      */
    +230     @Test
    +231     public void testSearchCPE() throws Exception {
    +232         String vendor = "apache software foundation";
    +233         String product = "struts 2 core";
    +234         String version = "2.1.2";
    +235         String expResult = "cpe:/a:apache:struts:2.1.2";
    +236 
    +237         CPEAnalyzer instance = new CPEAnalyzer();
    +238         instance.open();
    +239 
    +240         //TODO - yeah, not a very good test as the results are the same with or without weighting...
    +241         Set<String> productWeightings = new HashSet<String>(1);
    +242         productWeightings.add("struts2");
    +243 
    +244         Set<String> vendorWeightings = new HashSet<String>(1);
    +245         vendorWeightings.add("apache");
    +246 
    +247         List<IndexEntry> result = instance.searchCPE(vendor, product, productWeightings, vendorWeightings);
    +248         //TODO fix this assert
    +249         //Assert.assertEquals(expResult, result.get(0).getName());
    +250 
    +251 
    +252         instance.close();
    +253     }
    +254 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html new file mode 100644 index 000000000..d3746ed75 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexEntryTest.html @@ -0,0 +1,80 @@ + + + + +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 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 org.junit.Assert;
    +28  
    +29  /**
    +30   *
    +31   * @author Jeremy Long (jeremy.long@owasp.org)
    +32   */
    +33  public class IndexEntryTest {
    +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 setName method, of class IndexEntry.
    +53       *
    +54       * @throws Exception is thrown when an exception occurs.
    +55       */
    +56      @Test
    +57      public void testSetName() throws Exception {
    +58          String name = "cpe:/a:apache:struts:1.1:rc2";
    +59  
    +60          IndexEntry instance = new IndexEntry();
    +61          instance.parseName(name);
    +62  
    +63          Assert.assertEquals("apache", instance.getVendor());
    +64          Assert.assertEquals("struts", instance.getProduct());
    +65      }
    +66  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexIntegrationTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexIntegrationTest.html new file mode 100644 index 000000000..adfed241a --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexIntegrationTest.html @@ -0,0 +1,89 @@ + + + + +IndexIntegrationTest 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.File;
    +22  import java.io.IOException;
    +23  import org.apache.lucene.store.Directory;
    +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 IndexIntegrationTest {
    +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 update method, of class Index.
    +55       */
    +56      @Test
    +57      public void testUpdate() throws Exception {
    +58          //deprecated
    +59          //Index instance = new Index();
    +60          //instance.update();
    +61      }
    +62  
    +63      /**
    +64       * Test of updateNeeded method, of class Index.
    +65       */
    +66      @Test
    +67      public void testUpdateNeeded() throws Exception {
    +68          //deprecated
    +69          //Index instance = new Index();
    +70          //instance.updateNeeded();
    +71          //if an exception is thrown this test fails. However, because it depends on the
    +72          //  order of the tests what this will return I am just testing for the exception.
    +73          //assertTrue(expResult < result);
    +74      }
    +75  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexTest.html new file mode 100644 index 000000000..8df6f3413 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/IndexTest.html @@ -0,0 +1,117 @@ + + + + +IndexTest 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.Index;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.apache.lucene.document.Document;
    +27  import org.apache.lucene.queryparser.classic.ParseException;
    +28  import org.apache.lucene.search.ScoreDoc;
    +29  import org.apache.lucene.search.TopDocs;
    +30  import org.apache.lucene.store.Directory;
    +31  import org.junit.After;
    +32  import org.junit.AfterClass;
    +33  import org.junit.Before;
    +34  import org.junit.BeforeClass;
    +35  import org.junit.Test;
    +36  import static org.junit.Assert.*;
    +37  
    +38  /**
    +39   *
    +40   * @author Jeremy Long (jeremy.long@owasp.org)
    +41   */
    +42  public class IndexTest {
    +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 open method, of class Index.
    +62       */
    +63      @Test
    +64      public void testOpen() {
    +65          Index instance = new Index();
    +66          try {
    +67              instance.open();
    +68              //TODO research why are we getting multiple documents for the same documentId. is the update method not working?
    +69  //            try {
    +70  //                instance.createSearchingAnalyzer();
    +71  //                TopDocs docs = instance.search("product:( project\\-open )", 20);
    +72  //                for (ScoreDoc d : docs.scoreDocs) {
    +73  //                    final Document doc = instance.getDocument(d.doc);
    +74  //                    String vendor = doc.getField(Fields.VENDOR).stringValue();
    +75  //                    String product = doc.getField(Fields.PRODUCT).stringValue();
    +76  //                    System.out.print(d.doc);
    +77  //                    System.out.print(" : ");
    +78  //                    System.out.print(vendor + ":");
    +79  //                    System.out.println(product);
    +80  //                }
    +81  //            } catch (ParseException ex) {
    +82  //                Logger.getLogger(IndexTest.class.getName()).log(Level.SEVERE, null, ex);
    +83  //            }
    +84          } catch (IOException ex) {
    +85              assertNull(ex.getMessage(), ex);
    +86          }
    +87          instance.close();
    +88      }
    +89  
    +90      /**
    +91       * Test of getDirectory method, of class Index.
    +92       *
    +93       * @throws Exception
    +94       */
    +95      @Test
    +96      public void testGetDirectory() throws Exception {
    +97          Index index = new Index();
    +98          Directory result = index.getDirectory();
    +99  
    +100         String exp = File.separatorChar + "target" + File.separatorChar + "data" + File.separatorChar + "cpe";
    +101         assertTrue(result.toString().contains(exp));
    +102     }
    +103 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..26c27024a --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,36 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cpe + + + + +

    + org.owasp.dependencycheck.data.cpe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..4fa324c42 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,87 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cpe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + BaseIndexTestCase +
    + CPEAnalyzerTest +
    + IndexEntryTest +
    + IndexIntegrationTest +
    + IndexTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/CweDBTest.html new file mode 100644 index 000000000..ba8c4c7a0 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..bea2aa536 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cwe + + + + +

    + org.owasp.dependencycheck.data.cwe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..9b1b5b6cd --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/FieldAnalyzerTest.html new file mode 100644 index 000000000..7f4e16c32 --- /dev/null +++ b/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(Version.LUCENE_43);
    +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(Version.LUCENE_43);
    +87          String querystr = "product:\"(Spring Framework Core)\" vendor:(SpringSource)";
    +88  
    +89          SearchFieldAnalyzer searchAnalyzerProduct = new SearchFieldAnalyzer(Version.LUCENE_43);
    +90          SearchFieldAnalyzer searchAnalyzerVendor = new SearchFieldAnalyzer(Version.LUCENE_43);
    +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(Version.LUCENE_43), map);
    +95          QueryParser parser = new QueryParser(Version.LUCENE_43, 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(Version.LUCENE_43, 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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/LuceneUtilsTest.html new file mode 100644 index 000000000..74d1377a3 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html new file mode 100644 index 000000000..f1dc2479b --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilterTest.html @@ -0,0 +1,94 @@ + + + + +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 org.apache.lucene.analysis.Analyzer;
    +10  import org.apache.lucene.analysis.BaseTokenStreamTestCase;
    +11  import static org.apache.lucene.analysis.BaseTokenStreamTestCase.assertAnalyzesTo;
    +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.junit.After;
    +16  import org.junit.AfterClass;
    +17  import org.junit.Before;
    +18  import org.junit.BeforeClass;
    +19  import org.junit.Test;
    +20  import static org.junit.Assert.*;
    +21  
    +22  /**
    +23   *
    +24   * @author Jeremy Long (jeremy.long@owasp.org)
    +25   */
    +26  public class TokenPairConcatenatingFilterTest extends BaseTokenStreamTestCase {
    +27  
    +28      private Analyzer analyzer;
    +29  
    +30      public TokenPairConcatenatingFilterTest() {
    +31          analyzer = new Analyzer() {
    +32              @Override
    +33              protected Analyzer.TokenStreamComponents createComponents(String fieldName,
    +34                      Reader reader) {
    +35                  Tokenizer source = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
    +36                  return new Analyzer.TokenStreamComponents(source, new TokenPairConcatenatingFilter(source));
    +37              }
    +38          };
    +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() throws Exception {
    +51          super.setUp();
    +52      }
    +53  
    +54      @After
    +55      public void tearDown() throws Exception {
    +56          super.tearDown();
    +57      }
    +58  
    +59      /**
    +60       * test some examples
    +61       */
    +62      public void testExamples() throws IOException {
    +63          //TODO figure outwhy I am getting "Failed: incrementtoken() called while in wrong state"
    +64  //        String[] expected = new String[3];
    +65  //        expected[0] = "one";
    +66  //        expected[1] = "onetwo";
    +67  //        expected[2] = "two";
    +68  //        checkOneTerm(analyzer, "one", "one");
    +69  //        assertAnalyzesTo(analyzer, "two", new String[]{"onetwo", "two"});
    +70          //checkOneTerm(analyzer, "two", "onetwo");
    +71          //checkOneTerm(analyzer, "three", "two");
    +72      }
    +73  
    +74      /**
    +75       * Test of clear method, of class TokenPairConcatenatingFilter.
    +76       */
    +77      @Test
    +78      public void testClear() {
    +79      }
    +80  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilterTest.html new file mode 100644 index 000000000..25027bf53 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..6a4439363 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,33 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.lucene + + + + +

    + org.owasp.dependencycheck.data.lucene +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..b9deef1b6 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,82 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html new file mode 100644 index 000000000..f8f7f436c --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/BaseDBTestCase.html @@ -0,0 +1,135 @@ + + + + +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.utils.Settings;
    +34  
    +35  /**
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public abstract class BaseDBTestCase extends TestCase {
    +40  
    +41      protected final static int BUFFER_SIZE = 2048;
    +42  
    +43      @Override
    +44      protected void setUp() throws Exception {
    +45          super.setUp();
    +46          ensureDBExists();
    +47      }
    +48  
    +49      protected static File getDataDirectory() throws IOException {
    +50          final String fileName = Settings.getString(Settings.KEYS.CVE_DATA_DIRECTORY);
    +51          final String dataDirectory = Settings.getString(Settings.KEYS.DATA_DIRECTORY);
    +52          return new File(dataDirectory, fileName);
    +53      }
    +54  
    +55      public static void ensureDBExists() throws Exception {
    +56          String indexPath = getDataDirectory().getCanonicalPath();
    +57          java.io.File f = new File(indexPath);
    +58          if (!f.exists() || (f.isDirectory() && f.listFiles().length == 0)) {
    +59              f.mkdirs();
    +60              FileInputStream fis = null;
    +61              ZipInputStream zin = null;
    +62              try {
    +63                  File path = new File(BaseDBTestCase.class.getClassLoader().getResource("db.cve.zip").getPath());
    +64                  fis = new FileInputStream(path);
    +65                  zin = new ZipInputStream(new BufferedInputStream(fis));
    +66                  ZipEntry entry;
    +67                  while ((entry = zin.getNextEntry()) != null) {
    +68                      if (entry.isDirectory()) {
    +69                          continue;
    +70                      }
    +71                      FileOutputStream fos = null;
    +72                      BufferedOutputStream dest = null;
    +73                      try {
    +74                          File o = new File(indexPath, entry.getName());
    +75                          o.createNewFile();
    +76                          fos = new FileOutputStream(o, false);
    +77                          dest = new BufferedOutputStream(fos, BUFFER_SIZE);
    +78                          byte data[] = new byte[BUFFER_SIZE];
    +79                          int count;
    +80                          while ((count = zin.read(data, 0, BUFFER_SIZE)) != -1) {
    +81                              dest.write(data, 0, count);
    +82                          }
    +83                      } catch (Exception ex) {
    +84                          Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +85                      } finally {
    +86                          try {
    +87                              if (dest != null) {
    +88                                  dest.flush();
    +89                                  dest.close();
    +90                              }
    +91                          } catch (Throwable ex) {
    +92                              Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +93                          }
    +94                          try {
    +95                              if (fos != null) {
    +96                                  fos.close();
    +97                              }
    +98                          } catch (Throwable ex) {
    +99                              Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +100                         }
    +101                     }
    +102                 }
    +103             } finally {
    +104                 try {
    +105                     if (zin != null) {
    +106                         zin.close();
    +107                     }
    +108                 } catch (Throwable ex) {
    +109                     Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +110                 }
    +111                 try {
    +112                     if (fis != null) {
    +113                         fis.close();
    +114                     }
    +115                 } catch (Throwable ex) {
    +116                     Logger.getLogger(BaseDBTestCase.class.getName()).log(Level.FINEST, null, ex);
    +117                 }
    +118             }
    +119         }
    +120     }
    +121 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/CveDBTest.html new file mode 100644 index 000000000..93269da11 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..6e6aa4614 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve + + + + +

    + org.owasp.dependencycheck.data.nvdcve +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..2d271b7e3 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + +
    Class Summary
    + BaseDBTestCase +
    + CveDBTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdaterIntegrationTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdaterIntegrationTest.html new file mode 100644 index 000000000..2cfb1d070 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdaterIntegrationTest.html @@ -0,0 +1,77 @@ + + + + +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) 2012 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.data.nvdcve.xml;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.xml.DatabaseUpdater;
    +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  
    +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() 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 update method, of class DatabaseUpdater.
    +55       *
    +56       * @throws Exception
    +57       */
    +58      @Test
    +59      public void testUpdate() throws Exception {
    +60          DatabaseUpdater instance = new DatabaseUpdater();
    +61          instance.update();
    +62      }
    +63  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_1_2_HandlerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_1_2_HandlerTest.html new file mode 100644 index 000000000..d7eed35a3 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/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.xml;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_2_0_HandlerTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve_2_0_HandlerTest.html new file mode 100644 index 000000000..94e444d45 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/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.xml;
    +20  
    +21  import org.owasp.dependencycheck.data.nvdcve.xml.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/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html new file mode 100644 index 000000000..0d47694df --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html @@ -0,0 +1,30 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve.xml + + + + +

    + org.owasp.dependencycheck.data.nvdcve.xml +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html new file mode 100644 index 000000000..359b4da0c --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html @@ -0,0 +1,77 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve.xml + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve.xml

    + + + + + + + + + + + + + + + + + + +
    Class Summary
    + DatabaseUpdaterIntegrationTest +
    + NvdCve_1_2_HandlerTest +
    + NvdCve_2_0_HandlerTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/DependencyTest.html new file mode 100644 index 000000000..d42226f5f --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/VulnerableSoftwareTest.html new file mode 100644 index 000000000..0ec34c33d --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..ded19d93d --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.dependency + + + + +

    + org.owasp.dependencycheck.dependency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..7d1c5db85 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..4f2a4fbc3 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..8d3ba561b --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html new file mode 100644 index 000000000..6d96f4aae --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/ReportGeneratorTest.html @@ -0,0 +1,124 @@ + + + + +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.data.cpe.BaseIndexTestCase;
    +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  
    +28  /**
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public class ReportGeneratorTest {
    +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      public void setUp() {
    +44      }
    +45  
    +46      @After
    +47      public void tearDown() {
    +48      }
    +49  
    +50      /**
    +51       * Test of generateReport method, of class ReportGenerator.
    +52       *
    +53       * @throws Exception is thrown when an exception occurs.
    +54       */
    +55      @Test
    +56      public void testGenerateReport() throws Exception {
    +57          String templateName = "HtmlReport";
    +58  //        File f = new File("target/test-reports");
    +59  //        if (!f.exists()) {
    +60  //            f.mkdir();
    +61  //        }
    +62  //        String writeTo = "target/test-reports/Report.html";
    +63  //        Map<String, Object> properties = new HashMap<String, Object>();
    +64  //        Dependency d = new Dependency();
    +65  //        d.setFileName("FileName.jar");
    +66  //        d.setActualFilePath("lib/FileName.jar");
    +67  //        d.addCPEentry("cpe://a:/some:cpe:1.0");
    +68  //
    +69  //        List<Dependency> dependencies = new ArrayList<Dependency>();
    +70  //        d.getProductEvidence().addEvidence("jar","filename","<test>test", Confidence.HIGH);
    +71  //        d.getProductEvidence().addEvidence("manifest","vendor","<test>test", Confidence.HIGH);
    +72  //
    +73  //        for (Evidence e : d.getProductEvidence().iterator(Confidence.HIGH)) {
    +74  //            String t = e.getValue();
    +75  //        }
    +76  //        dependencies.add(d);
    +77  //
    +78  //        Dependency d2 = new Dependency();
    +79  //        d2.setFileName("Another.jar");
    +80  //        d2.setActualFilePath("lib/Another.jar");
    +81  //        d2.addCPEentry("cpe://a:/another:cpe:1.0");
    +82  //        d2.addCPEentry("cpe://a:/another:cpe:1.1");
    +83  //        d2.addCPEentry("cpe://a:/another:cpe:1.2");
    +84  //        d2.getProductEvidence().addEvidence("jar","filename","another.jar", Confidence.HIGH);
    +85  //        d2.getProductEvidence().addEvidence("manifest","vendor","Company A", Confidence.MEDIUM);
    +86  //
    +87  //        for (Evidence e : d2.getProductEvidence().iterator(Confidence.HIGH)) {
    +88  //            String t = e.getValue();
    +89  //        }
    +90  //
    +91  //        dependencies.add(d2);
    +92  //
    +93  //        Dependency d3 = new Dependency();
    +94  //        d3.setFileName("Third.jar");
    +95  //        d3.setActualFilePath("lib/Third.jar");
    +96  //        d3.getProductEvidence().addEvidence("jar","filename","third.jar", Confidence.HIGH);
    +97  //
    +98  //        for (Evidence e : d3.getProductEvidence().iterator(Confidence.HIGH)) {
    +99  //            String t = e.getValue();
    +100 //        }
    +101 //
    +102 //        dependencies.add(d3);
    +103 //
    +104 //        properties.put("dependencies",dependencies);
    +105 //
    +106 //        ReportGenerator instance = new ReportGenerator();
    +107 //        instance.generateReport(templateName, writeTo, properties);
    +108         //assertTrue("need to add a real check here", false);
    +109     }
    +110 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..770293a9f --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.reporting + + + + +

    + org.owasp.dependencycheck.reporting +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..2c7d28596 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/ChecksumTest.html new file mode 100644 index 000000000..7654da346 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html new file mode 100644 index 000000000..b60db0879 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionTest.html @@ -0,0 +1,191 @@ + + + + +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         System.out.println("hashCode");
    +113         DependencyVersion instance = new DependencyVersion("3.2.1");
    +114         int expResult = 80756;
    +115         int result = instance.hashCode();
    +116         assertEquals(expResult, result);
    +117     }
    +118 
    +119     /**
    +120      * Test of matchesAtLeastThreeLevels method, of class DependencyVersion.
    +121      */
    +122     @Test
    +123     public void testMatchesAtLeastThreeLevels() {
    +124 
    +125         DependencyVersion instance = new DependencyVersion("1.2.3.4");
    +126         DependencyVersion version = new DependencyVersion("1.2.3.5");
    +127         //true tests
    +128         assertEquals(true, instance.matchesAtLeastThreeLevels(version));
    +129         version = new DependencyVersion("1.2");
    +130         assertEquals(true, instance.matchesAtLeastThreeLevels(version));
    +131         //false tests
    +132         version = new DependencyVersion("1.2.2.5");
    +133         assertEquals(false, instance.matchesAtLeastThreeLevels(version));
    +134         version = new DependencyVersion("2");
    +135         assertEquals(false, instance.matchesAtLeastThreeLevels(version));
    +136     }
    +137 
    +138     /**
    +139      * Test of compareTo method, of class DependencyVersion.
    +140      */
    +141     @Test
    +142     public void testCompareTo() {
    +143         DependencyVersion instance = new DependencyVersion("1.2.3");
    +144         DependencyVersion version = new DependencyVersion("1.2.3");
    +145         int expResult = 0;
    +146         assertEquals(0, instance.compareTo(version));
    +147         version = new DependencyVersion("1.1");
    +148         assertEquals(1, instance.compareTo(version));
    +149         version = new DependencyVersion("1.2");
    +150         assertEquals(1, instance.compareTo(version));
    +151         version = new DependencyVersion("1.3");
    +152         assertEquals(-1, instance.compareTo(version));
    +153         version = new DependencyVersion("1.2.3.1");
    +154         assertEquals(-1, instance.compareTo(version));
    +155 
    +156         DependencyVersion[] dv = new DependencyVersion[7];
    +157         dv[0] = new DependencyVersion("2.1.3");
    +158         dv[1] = new DependencyVersion("2.1.3.r2");
    +159         dv[2] = new DependencyVersion("2.1.3.r1");
    +160         dv[3] = new DependencyVersion("1.2.3.1");
    +161         dv[4] = new DependencyVersion("1.2.3");
    +162         dv[5] = new DependencyVersion("2");
    +163         dv[6] = new DependencyVersion("-");
    +164 
    +165         DependencyVersion[] expected = new DependencyVersion[7];
    +166         expected[0] = new DependencyVersion("-");
    +167         expected[1] = new DependencyVersion("1.2.3");
    +168         expected[2] = new DependencyVersion("1.2.3.1");
    +169         expected[3] = new DependencyVersion("2");
    +170         expected[4] = new DependencyVersion("2.1.3");
    +171         expected[5] = new DependencyVersion("2.1.3.r1");
    +172         expected[6] = new DependencyVersion("2.1.3.r2");
    +173         java.util.Arrays.sort(dv);
    +174 
    +175         assertArrayEquals(expected, dv);
    +176     }
    +177 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DependencyVersionUtilTest.html new file mode 100644 index 000000000..b1e2ff9d0 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html new file mode 100644 index 000000000..8c9dc3ad4 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/DownloaderIntegrationTest.html @@ -0,0 +1,96 @@ + + + + +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 org.owasp.dependencycheck.utils.Settings;
    +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 DownloaderIntegrationTest {
    +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 fetchFile method, of class Downloader.
    +55       *
    +56       * @throws Exception thrown when an exception occurs.
    +57       */
    +58      @Test
    +59      public void testFetchFile() throws Exception {
    +60  
    +61  //        Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, "1000");
    +62  
    +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.CPE_URL));
    +67          String outputPath = "target/downloaded_cpe.xml";
    +68          Downloader.fetchFile(url, outputPath, true);
    +69  
    +70          url = new URL(Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL));
    +71          outputPath = "target/downloaded_cve.xml";
    +72          Downloader.fetchFile(url, outputPath, false);
    +73  
    +74      }
    +75  
    +76      @Test
    +77      public void testGetLastModified() throws Exception {
    +78          URL url = new URL("http://nvd.nist.gov/download/nvdcve-2012.xml");
    +79          long timestamp = Downloader.getLastModified(url);
    +80          assertTrue("timestamp equal to zero?", timestamp > 0);
    +81      }
    +82  }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FileUtilsTest.html new file mode 100644 index 000000000..e33de3a93 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/FilterTest.html new file mode 100644 index 000000000..576d80b65 --- /dev/null +++ b/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/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html new file mode 100644 index 000000000..94992f4c6 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/SettingsTest.html @@ -0,0 +1,180 @@ + + + + +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.CPE_DATA_DIRECTORY;
    +61          String expResult = "cpe";
    +62          String result = Settings.getString(key);
    +63          Assert.assertTrue(result.endsWith(expResult));
    +64      }
    +65  
    +66      /**
    +67       * Test of getFile method, of class Settings.
    +68       */
    +69      @Test
    +70      public void testGetFile() throws IOException {
    +71          String key = Settings.KEYS.CPE_DATA_DIRECTORY;
    +72          String expResult = "data" + File.separator + "cpe";
    +73          File result = Settings.getFile(key);
    +74          Assert.assertTrue(result.getAbsolutePath().endsWith(expResult));
    +75  
    +76          key = "an invalid key!!!";
    +77          result = Settings.getFile(key, expResult);
    +78          Assert.assertTrue(result.getAbsolutePath().endsWith(expResult));
    +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 }
    +
    +
    + + diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..08ce8c1fc --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,42 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.utils + + + + +

    + org.owasp.dependencycheck.utils +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..6eec5ab98 --- /dev/null +++ b/dependency-check-core/xref-test/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,97 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.utils + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + ChecksumTest +
    + DependencyVersionTest +
    + DependencyVersionUtilTest +
    + DownloaderIntegrationTest +
    + FileUtilsTest +
    + FilterTest +
    + SettingsTest +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/overview-frame.html b/dependency-check-core/xref-test/overview-frame.html new file mode 100644 index 000000000..6f9da3bc8 --- /dev/null +++ b/dependency-check-core/xref-test/overview-frame.html @@ -0,0 +1,52 @@ + + + + + + dependency-check-core 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-core/xref-test/overview-summary.html b/dependency-check-core/xref-test/overview-summary.html new file mode 100644 index 000000000..3c80091d7 --- /dev/null +++ b/dependency-check-core/xref-test/overview-summary.html @@ -0,0 +1,109 @@ + + + + + + dependency-check-core 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-core 1.0.1 Reference

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck +
    + org.owasp.dependencycheck.analyzer +
    + org.owasp.dependencycheck.data.cpe +
    + org.owasp.dependencycheck.data.cwe +
    + org.owasp.dependencycheck.data.lucene +
    + org.owasp.dependencycheck.data.nvdcve +
    + org.owasp.dependencycheck.data.nvdcve.xml +
    + org.owasp.dependencycheck.dependency +
    + org.owasp.dependencycheck.reporting +
    + org.owasp.dependencycheck.utils +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref-test/stylesheet.css b/dependency-check-core/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-core/xref/allclasses-frame.html b/dependency-check-core/xref/allclasses-frame.html new file mode 100644 index 000000000..b9b73a107 --- /dev/null +++ b/dependency-check-core/xref/allclasses-frame.html @@ -0,0 +1,422 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-core/xref/index.html b/dependency-check-core/xref/index.html new file mode 100644 index 000000000..e08a3b6b6 --- /dev/null +++ b/dependency-check-core/xref/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html b/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html new file mode 100644 index 000000000..05bd9e5df --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/Engine.html @@ -0,0 +1,405 @@ + + + + +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.util.ArrayList;
    +24  import java.util.HashSet;
    +25  import java.util.Iterator;
    +26  import java.util.List;
    +27  import java.util.Set;
    +28  import java.util.logging.Level;
    +29  import java.util.logging.Logger;
    +30  import org.owasp.dependencycheck.analyzer.AnalysisException;
    +31  import org.owasp.dependencycheck.analyzer.AnalysisPhase;
    +32  import org.owasp.dependencycheck.analyzer.Analyzer;
    +33  import org.owasp.dependencycheck.analyzer.AnalyzerService;
    +34  import org.owasp.dependencycheck.data.CachedWebDataSource;
    +35  import org.owasp.dependencycheck.data.UpdateException;
    +36  import org.owasp.dependencycheck.data.UpdateService;
    +37  import org.owasp.dependencycheck.dependency.Dependency;
    +38  import org.owasp.dependencycheck.utils.FileUtils;
    +39  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +40  import org.owasp.dependencycheck.utils.Settings;
    +41  
    +42  /**
    +43   * Scans files, directories, etc. for Dependencies. Analyzers are loaded and
    +44   * used to process the files found by the scan, if a file is encountered and an
    +45   * Analyzer is associated with the file type then the file is turned into a
    +46   * dependency.
    +47   *
    +48   * @author Jeremy Long (jeremy.long@owasp.org)
    +49   */
    +50  public class Engine {
    +51  
    +52      /**
    +53       * The list of dependencies.
    +54       */
    +55      private final List<Dependency> dependencies = new ArrayList<Dependency>();
    +56      /**
    +57       * A Map of analyzers grouped by Analysis phase.
    +58       */
    +59      private final EnumMap<AnalysisPhase, List<Analyzer>> analyzers =
    +60              new EnumMap<AnalysisPhase, List<Analyzer>>(AnalysisPhase.class);
    +61      /**
    +62       * A set of extensions supported by the analyzers.
    +63       */
    +64      private final Set<String> extensions = new HashSet<String>();
    +65  
    +66      /**
    +67       * Creates a new Engine.
    +68       */
    +69      public Engine() {
    +70          boolean autoUpdate = true;
    +71          try {
    +72              autoUpdate = Settings.getBoolean(Settings.KEYS.AUTO_UPDATE);
    +73          } catch (InvalidSettingException ex) {
    +74              Logger.getLogger(Engine.class.getName()).log(Level.FINE, "Invalid setting for auto-update; using true.");
    +75          }
    +76          if (autoUpdate) {
    +77              doUpdates();
    +78          }
    +79          loadAnalyzers();
    +80      }
    +81  
    +82      /**
    +83       * Creates a new Engine.
    +84       *
    +85       * @param autoUpdate indicates whether or not data should be updated from
    +86       * the Internet
    +87       * @deprecated This function should no longer be used; the autoupdate flag
    +88       * should be set using:
    +89       * <code>Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, value);</code>
    +90       */
    +91      @Deprecated
    +92      public Engine(boolean autoUpdate) {
    +93          if (autoUpdate) {
    +94              doUpdates();
    +95          }
    +96          loadAnalyzers();
    +97      }
    +98  
    +99      /**
    +100      * Loads the analyzers specified in the configuration file (or system
    +101      * properties).
    +102      */
    +103     private void loadAnalyzers() {
    +104 
    +105         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +106             analyzers.put(phase, new ArrayList<Analyzer>());
    +107         }
    +108 
    +109         final AnalyzerService service = AnalyzerService.getInstance();
    +110         final Iterator<Analyzer> iterator = service.getAnalyzers();
    +111         while (iterator.hasNext()) {
    +112             final Analyzer a = iterator.next();
    +113             analyzers.get(a.getAnalysisPhase()).add(a);
    +114             if (a.getSupportedExtensions() != null) {
    +115                 extensions.addAll(a.getSupportedExtensions());
    +116             }
    +117         }
    +118     }
    +119 
    +120     /**
    +121      * Get the List of the analyzers for a specific phase of analysis.
    +122      *
    +123      * @param phase the phase to get the configured analyzers.
    +124      * @return the analyzers loaded
    +125      */
    +126     public List<Analyzer> getAnalyzers(AnalysisPhase phase) {
    +127         return analyzers.get(phase);
    +128     }
    +129 
    +130     /**
    +131      * Get the dependencies identified.
    +132      *
    +133      * @return the dependencies identified
    +134      */
    +135     public List<Dependency> getDependencies() {
    +136         return dependencies;
    +137     }
    +138 
    +139     /**
    +140      * Scans an array of files or directories. If a directory is specified, it
    +141      * will be scanned recursively. Any dependencies identified are added to the
    +142      * dependency collection.
    +143      *
    +144      * @since v0.3.2.5
    +145      *
    +146      * @param paths an array of paths to files or directories to be analyzed.
    +147      */
    +148     public void scan(String[] paths) {
    +149         for (String path : paths) {
    +150             final File file = new File(path);
    +151             scan(file);
    +152         }
    +153     }
    +154 
    +155     /**
    +156      * Scans a given file or directory. If a directory is specified, it will be
    +157      * scanned recursively. Any dependencies identified are added to the
    +158      * dependency collection.
    +159      *
    +160      * @param path the path to a file or directory to be analyzed.
    +161      */
    +162     public void scan(String path) {
    +163         final File file = new File(path);
    +164         scan(file);
    +165     }
    +166 
    +167     /**
    +168      * Scans an array of files or directories. If a directory is specified, it
    +169      * will be scanned recursively. Any dependencies identified are added to the
    +170      * dependency collection.
    +171      *
    +172      * @since v0.3.2.5
    +173      *
    +174      * @param files an array of paths to files or directories to be analyzed.
    +175      */
    +176     public void scan(File[] files) {
    +177         for (File file : files) {
    +178             scan(file);
    +179         }
    +180     }
    +181 
    +182     /**
    +183      * Scans a list of files or directories. If a directory is specified, it
    +184      * will be scanned recursively. Any dependencies identified are added to the
    +185      * dependency collection.
    +186      *
    +187      * @since v0.3.2.5
    +188      *
    +189      * @param files a set of paths to files or directories to be analyzed.
    +190      */
    +191     public void scan(Set<File> files) {
    +192         for (File file : files) {
    +193             scan(file);
    +194         }
    +195     }
    +196 
    +197     /**
    +198      * Scans a list of files or directories. If a directory is specified, it
    +199      * will be scanned recursively. Any dependencies identified are added to the
    +200      * dependency collection.
    +201      *
    +202      * @since v0.3.2.5
    +203      *
    +204      * @param files a set of paths to files or directories to be analyzed.
    +205      */
    +206     public void scan(List<File> files) {
    +207         for (File file : files) {
    +208             scan(file);
    +209         }
    +210     }
    +211 
    +212     /**
    +213      * Scans a given file or directory. If a directory is specified, it will be
    +214      * scanned recursively. Any dependencies identified are added to the
    +215      * dependency collection.
    +216      *
    +217      * @since v0.3.2.4
    +218      *
    +219      * @param file the path to a file or directory to be analyzed.
    +220      */
    +221     public void scan(File file) {
    +222         if (file.exists()) {
    +223             if (file.isDirectory()) {
    +224                 scanDirectory(file);
    +225             } else {
    +226                 scanFile(file);
    +227             }
    +228         }
    +229     }
    +230 
    +231     /**
    +232      * Recursively scans files and directories. Any dependencies identified are
    +233      * added to the dependency collection.
    +234      *
    +235      * @param dir the directory to scan.
    +236      */
    +237     protected void scanDirectory(File dir) {
    +238         final File[] files = dir.listFiles();
    +239         if (files != null) {
    +240             for (File f : files) {
    +241                 if (f.isDirectory()) {
    +242                     scanDirectory(f);
    +243                 } else {
    +244                     scanFile(f);
    +245                 }
    +246             }
    +247         }
    +248     }
    +249 
    +250     /**
    +251      * Scans a specified file. If a dependency is identified it is added to the
    +252      * dependency collection.
    +253      *
    +254      * @param file The file to scan.
    +255      */
    +256     protected void scanFile(File file) {
    +257         if (!file.isFile()) {
    +258             final String msg = String.format("Path passed to scanFile(File) is not a file: %s. Skipping the file.", file.toString());
    +259             Logger.getLogger(Engine.class.getName()).log(Level.FINE, msg);
    +260             return;
    +261         }
    +262         final String fileName = file.getName();
    +263         final String extension = FileUtils.getFileExtension(fileName);
    +264         if (extension != null) {
    +265             if (extensions.contains(extension)) {
    +266                 final Dependency dependency = new Dependency(file);
    +267                 dependencies.add(dependency);
    +268             }
    +269         } else {
    +270             final String msg = String.format("No file extension found on file '%s'. The file was not analyzed.",
    +271                     file.toString());
    +272             Logger.getLogger(Engine.class.getName()).log(Level.FINEST, msg);
    +273         }
    +274     }
    +275 
    +276     /**
    +277      * Runs the analyzers against all of the dependencies.
    +278      */
    +279     public void analyzeDependencies() {
    +280         //phase one initialize
    +281         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +282             final List<Analyzer> analyzerList = analyzers.get(phase);
    +283             for (Analyzer a : analyzerList) {
    +284                 try {
    +285                     a.initialize();
    +286                 } catch (Exception ex) {
    +287                     final String msg = String.format("\"Exception occurred initializing \"%s\".\"", a.getName());
    +288                     Logger.getLogger(Engine.class.getName()).log(Level.SEVERE, msg);
    +289                     Logger.getLogger(Engine.class.getName()).log(Level.INFO, msg, ex);
    +290                     try {
    +291                         a.close();
    +292                     } catch (Exception ex1) {
    +293                         Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex1);
    +294                     }
    +295                 }
    +296             }
    +297         }
    +298 
    +299         // analysis phases
    +300         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +301             final List<Analyzer> analyzerList = analyzers.get(phase);
    +302 
    +303             for (Analyzer a : analyzerList) {
    +304                 /* need to create a copy of the collection because some of the
    +305                  * analyzers may modify it. This prevents ConcurrentModificationExceptions.
    +306                  * This is okay for adds/deletes because it happens per analyzer.
    +307                  */
    +308                 final Set<Dependency> dependencySet = new HashSet<Dependency>();
    +309                 dependencySet.addAll(dependencies);
    +310                 for (Dependency d : dependencySet) {
    +311                     if (a.supportsExtension(d.getFileExtension())) {
    +312                         try {
    +313                             a.analyze(d, this);
    +314                         } catch (AnalysisException ex) {
    +315                             d.addAnalysisException(ex);
    +316                         }
    +317                     }
    +318                 }
    +319             }
    +320         }
    +321 
    +322         //close/cleanup
    +323         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +324             final List<Analyzer> analyzerList = analyzers.get(phase);
    +325             for (Analyzer a : analyzerList) {
    +326                 try {
    +327                     a.close();
    +328                 } catch (Exception ex) {
    +329                     Logger.getLogger(Engine.class.getName()).log(Level.FINEST, null, ex);
    +330                 }
    +331             }
    +332         }
    +333     }
    +334 
    +335     /**
    +336      * Cycles through the cached web data sources and calls update on all of
    +337      * them.
    +338      */
    +339     private void doUpdates() {
    +340         final UpdateService service = UpdateService.getInstance();
    +341         final Iterator<CachedWebDataSource> iterator = service.getDataSources();
    +342         while (iterator.hasNext()) {
    +343             final CachedWebDataSource source = iterator.next();
    +344             try {
    +345                 source.update();
    +346             } catch (UpdateException ex) {
    +347                 Logger.getLogger(Engine.class.getName()).log(Level.WARNING,
    +348                         "Unable to update Cached Web DataSource, using local data instead. Results may not include recent vulnerabilities.");
    +349                 Logger.getLogger(Engine.class.getName()).log(Level.FINE,
    +350                         String.format("Unable to update details for %s", source.getClass().getName()), ex);
    +351             }
    +352         }
    +353     }
    +354 
    +355     /**
    +356      * Returns a full list of all of the analyzers. This is useful for reporting
    +357      * which analyzers where used.
    +358      *
    +359      * @return a list of Analyzers
    +360      */
    +361     public List<Analyzer> getAnalyzers() {
    +362         final List<Analyzer> ret = new ArrayList<Analyzer>();
    +363         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +364             final List<Analyzer> analyzerList = analyzers.get(phase);
    +365             ret.addAll(analyzerList);
    +366         }
    +367         return ret;
    +368     }
    +369 
    +370     /**
    +371      * Checks all analyzers to see if an extension is supported.
    +372      *
    +373      * @param ext a file extension
    +374      * @return true or false depending on whether or not the file extension is
    +375      * supported
    +376      */
    +377     public boolean supportsExtension(String ext) {
    +378         if (ext == null) {
    +379             return false;
    +380         }
    +381         for (AnalysisPhase phase : AnalysisPhase.values()) {
    +382             final List<Analyzer> analyzerList = analyzers.get(phase);
    +383             for (Analyzer a : analyzerList) {
    +384                 if (a.getSupportedExtensions() != null && a.supportsExtension(ext)) {
    +385                     return true;
    +386                 }
    +387             }
    +388         }
    +389         return false;
    +390     }
    +391 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AbstractAnalyzer.html new file mode 100644 index 000000000..9ae5346af --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisException.html new file mode 100644 index 000000000..7dbf1b8e2 --- /dev/null +++ b/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 DownloadFailedException.
    +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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalysisPhase.html new file mode 100644 index 000000000..7864e4bee --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/Analyzer.html new file mode 100644 index 000000000..677780488 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/AnalyzerService.html new file mode 100644 index 000000000..c134e9bde --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html new file mode 100644 index 000000000..5f9d7c85a --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/ArchiveAnalyzer.html @@ -0,0 +1,322 @@ + + + + +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 java.util.zip.ZipEntry;
    +36  import java.util.zip.ZipInputStream;
    +37  import org.h2.store.fs.FileUtils;
    +38  import org.owasp.dependencycheck.Engine;
    +39  import org.owasp.dependencycheck.dependency.Dependency;
    +40  import org.owasp.dependencycheck.utils.Settings;
    +41  
    +42  /**
    +43   * <p>An analyzer that works on archive files:
    +44   * <ul>
    +45   * <li><b>ZIP</b> - if it is determined to be a JAR, WAR or EAR a copy is made
    +46   * and the copy is given the correct extension so that it will be correctly
    +47   * analyzed.</li>
    +48   * <li><b>WAR</b> - the WAR contents are extracted and added as dependencies to
    +49   * the scan. The displayed path is relative to the WAR.</li>
    +50   * <li><b>EAR</b> - the WAR contents are extracted and added as dependencies to
    +51   * the scan. Any WAR files are also processed so that the contained JAR files
    +52   * are added to the list of dependencies. The displayed path is relative to the
    +53   * EAR.</li>
    +54   * </ul></p>
    +55   *
    +56   * @author Jeremy Long (jeremy.long@owasp.org)
    +57   */
    +58  public class ArchiveAnalyzer extends AbstractAnalyzer implements Analyzer {
    +59  
    +60      /**
    +61       * The buffer size to use when extracting files from the archive.
    +62       */
    +63      private static final int BUFFER_SIZE = 4096;
    +64      /**
    +65       * The count of directories created during analysis. This is used for
    +66       * creating temporary directories.
    +67       */
    +68      private static int dirCount = 0;
    +69      /**
    +70       * The parent directory for the individual directories per archive.
    +71       */
    +72      private File tempFileLocation = null;
    +73      /**
    +74       * The max scan depth that the analyzer will recursively extract nested
    +75       * archives.
    +76       */
    +77      private static final int MAX_SCAN_DEPTH = Settings.getInt("archive.scan.depth", 3);
    +78      /**
    +79       * Tracks the current scan/extraction depth for nested archives.
    +80       */
    +81      private int scanDepth = 0;
    +82      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +83      /**
    +84       * The name of the analyzer.
    +85       */
    +86      private static final String ANALYZER_NAME = "Archive Analyzer";
    +87      /**
    +88       * The phase that this analyzer is intended to run in.
    +89       */
    +90      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INITIAL;
    +91      /**
    +92       * The set of file extensions supported by this analyzer.
    +93       */
    +94      private static final Set<String> EXTENSIONS = newHashSet("zip", "ear", "war");
    +95  
    +96      /**
    +97       * Returns a list of file EXTENSIONS supported by this analyzer.
    +98       *
    +99       * @return a list of file EXTENSIONS supported by this analyzer.
    +100      */
    +101     public Set<String> getSupportedExtensions() {
    +102         return EXTENSIONS;
    +103     }
    +104 
    +105     /**
    +106      * Returns the name of the analyzer.
    +107      *
    +108      * @return the name of the analyzer.
    +109      */
    +110     public String getName() {
    +111         return ANALYZER_NAME;
    +112     }
    +113 
    +114     /**
    +115      * Returns whether or not this analyzer can process the given extension.
    +116      *
    +117      * @param extension the file extension to test for support.
    +118      * @return whether or not the specified file extension is supported by this
    +119      * analyzer.
    +120      */
    +121     public boolean supportsExtension(String extension) {
    +122         return EXTENSIONS.contains(extension);
    +123     }
    +124 
    +125     /**
    +126      * Returns the phase that the analyzer is intended to run in.
    +127      *
    +128      * @return the phase that the analyzer is intended to run in.
    +129      */
    +130     public AnalysisPhase getAnalysisPhase() {
    +131         return ANALYSIS_PHASE;
    +132     }
    +133     //</editor-fold>
    +134 
    +135     /**
    +136      * The initialize method does nothing for this Analyzer.
    +137      *
    +138      * @throws Exception is thrown if there is an exception deleting or creating
    +139      * temporary files
    +140      */
    +141     @Override
    +142     public void initialize() throws Exception {
    +143         final String tmpDir = Settings.getString(Settings.KEYS.TEMP_DIRECTORY, System.getProperty("java.io.tmpdir"));
    +144         final File baseDir = new File(tmpDir);
    +145         tempFileLocation = File.createTempFile("check", "tmp", baseDir);
    +146         if (!tempFileLocation.delete()) {
    +147             throw new AnalysisException("Unable to delete temporary file '" + tempFileLocation.getAbsolutePath() + "'.");
    +148         }
    +149         if (!tempFileLocation.mkdirs()) {
    +150             throw new AnalysisException("Unable to create directory '" + tempFileLocation.getAbsolutePath() + "'.");
    +151         }
    +152     }
    +153 
    +154     /**
    +155      * The close method does nothing for this Analyzer.
    +156      *
    +157      * @throws Exception thrown if there is an exception deleting temporary
    +158      * files
    +159      */
    +160     @Override
    +161     public void close() throws Exception {
    +162         if (tempFileLocation != null && tempFileLocation.exists()) {
    +163             FileUtils.deleteRecursive(tempFileLocation.getAbsolutePath(), true);
    +164         }
    +165     }
    +166 
    +167     /**
    +168      * Analyzes a given dependency. If the dependency is an archive, such as a
    +169      * WAR or EAR, the contents are extracted, scanned, and added to the list of
    +170      * dependencies within the engine.
    +171      *
    +172      * @param dependency the dependency to analyze
    +173      * @param engine the engine scanning
    +174      * @throws AnalysisException thrown if there is an analysis exception
    +175      */
    +176     @Override
    +177     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +178         final File f = new File(dependency.getActualFilePath());
    +179         final File tmpDir = getNextTempDirectory();
    +180         extractFiles(f, tmpDir, engine);
    +181 
    +182         //make a copy
    +183         final List<Dependency> dependencies = new ArrayList<Dependency>(engine.getDependencies());
    +184         engine.scan(tmpDir);
    +185         final List<Dependency> newDependencies = engine.getDependencies();
    +186         if (dependencies.size() != newDependencies.size()) {
    +187             //get the new dependencies
    +188             final Set<Dependency> dependencySet = new HashSet<Dependency>();
    +189             dependencySet.addAll(newDependencies);
    +190             dependencySet.removeAll(dependencies);
    +191 
    +192             for (Dependency d : dependencySet) {
    +193                 //fix the dependency's display name and path
    +194                 final String displayPath = String.format("%s%s",
    +195                         dependency.getFilePath(),
    +196                         d.getActualFilePath().substring(tmpDir.getAbsolutePath().length()));
    +197                 final String displayName = String.format("%s%s%s",
    +198                         dependency.getFileName(),
    +199                         File.separator,
    +200                         d.getFileName());
    +201                 d.setFilePath(displayPath);
    +202                 d.setFileName(displayName);
    +203 
    +204                 //TODO - can we get more evidence from the parent? EAR contains module name, etc.
    +205 
    +206                 //analyze the dependency (i.e. extract files) if it is a supported type.
    +207                 if (this.supportsExtension(d.getFileExtension()) && scanDepth < MAX_SCAN_DEPTH) {
    +208                     scanDepth += 1;
    +209                     analyze(d, engine);
    +210                     scanDepth -= 1;
    +211                 }
    +212             }
    +213         }
    +214         Collections.sort(engine.getDependencies());
    +215     }
    +216 
    +217     /**
    +218      * Retrieves the next temporary directory to extract an archive too.
    +219      *
    +220      * @return a directory
    +221      * @throws AnalysisException thrown if unable to create temporary directory
    +222      */
    +223     private File getNextTempDirectory() throws AnalysisException {
    +224         dirCount += 1;
    +225         final File directory = new File(tempFileLocation, String.valueOf(dirCount));
    +226         if (!directory.mkdirs()) {
    +227             throw new AnalysisException("Unable to create temp directory '" + directory.getAbsolutePath() + "'.");
    +228         }
    +229         return directory;
    +230     }
    +231 
    +232     /**
    +233      * Extracts the contents of an archive into the specified directory.
    +234      *
    +235      * @param archive an archive file such as a WAR or EAR
    +236      * @param extractTo a directory to extract the contents to
    +237      * @param engine the scanning engine
    +238      * @throws AnalysisException thrown if the archive is not found
    +239      */
    +240     private void extractFiles(File archive, File extractTo, Engine engine) throws AnalysisException {
    +241         if (archive == null || extractTo == null) {
    +242             return;
    +243         }
    +244 
    +245         FileInputStream fis = null;
    +246         ZipInputStream zis = null;
    +247 
    +248         try {
    +249             fis = new FileInputStream(archive);
    +250         } catch (FileNotFoundException ex) {
    +251             Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.INFO, null, ex);
    +252             throw new AnalysisException("Archive file was not found.", ex);
    +253         }
    +254         zis = new ZipInputStream(new BufferedInputStream(fis));
    +255         ZipEntry entry;
    +256         try {
    +257             while ((entry = zis.getNextEntry()) != null) {
    +258                 if (entry.isDirectory()) {
    +259                     final File d = new File(extractTo, entry.getName());
    +260                     if (!d.mkdirs()) {
    +261                         throw new AnalysisException("Unable to create '" + d.getAbsolutePath() + "'.");
    +262                     }
    +263                 } else {
    +264                     final File file = new File(extractTo, entry.getName());
    +265                     final String ext = org.owasp.dependencycheck.utils.FileUtils.getFileExtension(file.getName());
    +266                     if (engine.supportsExtension(ext)) {
    +267                         BufferedOutputStream bos = null;
    +268                         FileOutputStream fos;
    +269                         try {
    +270                             fos = new FileOutputStream(file);
    +271                             bos = new BufferedOutputStream(fos, BUFFER_SIZE);
    +272                             int count;
    +273                             final byte data[] = new byte[BUFFER_SIZE];
    +274                             while ((count = zis.read(data, 0, BUFFER_SIZE)) != -1) {
    +275                                 bos.write(data, 0, count);
    +276                             }
    +277                             bos.flush();
    +278                         } catch (FileNotFoundException ex) {
    +279                             Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +280                             throw new AnalysisException("Unable to find file '" + file.getName() + "'.", ex);
    +281                         } catch (IOException ex) {
    +282                             Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +283                             throw new AnalysisException("IO Exception while parsing file '" + file.getName() + "'.", ex);
    +284                         } finally {
    +285                             if (bos != null) {
    +286                                 try {
    +287                                     bos.close();
    +288                                 } catch (IOException ex) {
    +289                                     Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
    +290                                 }
    +291                             }
    +292                         }
    +293                     }
    +294                 }
    +295             }
    +296         } catch (IOException ex) {
    +297             final String msg = String.format("Exception reading archive '%s'.", archive.getName());
    +298             Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINE, msg, ex);
    +299             throw new AnalysisException(msg, ex);
    +300         } finally {
    +301             try {
    +302                 zis.close();
    +303             } catch (IOException ex) {
    +304                 Logger.getLogger(ArchiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
    +305             }
    +306         }
    +307     }
    +308 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html new file mode 100644 index 000000000..08519a7da --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/DependencyBundlingAnalyzer.html @@ -0,0 +1,342 @@ + + + + +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.regex.Matcher;
    +27  import java.util.regex.Pattern;
    +28  import org.owasp.dependencycheck.Engine;
    +29  import org.owasp.dependencycheck.dependency.Dependency;
    +30  import org.owasp.dependencycheck.utils.DependencyVersion;
    +31  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +32  
    +33  /**
    +34   * <p>This analyzer ensures dependencies that should be grouped together, to
    +35   * remove excess noise from the report, are grouped. An example would be Spring,
    +36   * Spring Beans, Spring MVC, etc. If they are all for the same version and have
    +37   * the same relative path then these should be grouped into a single dependency
    +38   * under the core/main library.</p>
    +39   * <p>Note, this grouping only works on dependencies with identified CVE
    +40   * entries</p>
    +41   *
    +42   * @author Jeremy Long (jeremy.long@owasp.org)
    +43   */
    +44  public class DependencyBundlingAnalyzer extends AbstractAnalyzer implements Analyzer {
    +45  
    +46      //<editor-fold defaultstate="collapsed" desc="Constants and Member Variables">
    +47      /**
    +48       * A pattern for obtaining the first part of a filename.
    +49       */
    +50      private static final Pattern STARTING_TEXT_PATTERN = Pattern.compile("^[a-zA-Z]*");
    +51      /**
    +52       * a flag indicating if this analyzer has run. This analyzer only runs once.
    +53       */
    +54      private boolean analyzed = false;
    +55      //</editor-fold>
    +56      //<editor-fold defaultstate="collapsed" desc="All standard implmentation details of Analyzer">
    +57      /**
    +58       * The set of file extensions supported by this analyzer.
    +59       */
    +60      private static final Set<String> EXTENSIONS = null;
    +61      /**
    +62       * The name of the analyzer.
    +63       */
    +64      private static final String ANALYZER_NAME = "Dependency Bundling Analyzer";
    +65      /**
    +66       * The phase that this analyzer is intended to run in.
    +67       */
    +68      private static final AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.PRE_FINDING_ANALYSIS;
    +69  
    +70      /**
    +71       * Returns a list of file EXTENSIONS supported by this analyzer.
    +72       *
    +73       * @return a list of file EXTENSIONS supported by this analyzer.
    +74       */
    +75      public Set<String> getSupportedExtensions() {
    +76          return EXTENSIONS;
    +77      }
    +78  
    +79      /**
    +80       * Returns the name of the analyzer.
    +81       *
    +82       * @return the name of the analyzer.
    +83       */
    +84      public String getName() {
    +85          return ANALYZER_NAME;
    +86      }
    +87  
    +88      /**
    +89       * Returns whether or not this analyzer can process the given extension.
    +90       *
    +91       * @param extension the file extension to test for support
    +92       * @return whether or not the specified file extension is supported by this
    +93       * analyzer.
    +94       */
    +95      public boolean supportsExtension(String extension) {
    +96          return true;
    +97      }
    +98  
    +99      /**
    +100      * Returns the phase that the analyzer is intended to run in.
    +101      *
    +102      * @return the phase that the analyzer is intended to run in.
    +103      */
    +104     public AnalysisPhase getAnalysisPhase() {
    +105         return ANALYSIS_PHASE;
    +106     }
    +107     //</editor-fold>
    +108 
    +109     /**
    +110      * Analyzes a set of dependencies. If they have been found to have the same
    +111      * base path and the same set of identifiers they are likely related. The
    +112      * related dependencies are bundled into a single reportable item.
    +113      *
    +114      * @param ignore this analyzer ignores the dependency being analyzed
    +115      * @param engine the engine that is scanning the dependencies
    +116      * @throws AnalysisException is thrown if there is an error reading the JAR
    +117      * file.
    +118      */
    +119     @Override
    +120     public void analyze(Dependency ignore, Engine engine) throws AnalysisException {
    +121         if (!analyzed) {
    +122             analyzed = true;
    +123             final Set<Dependency> dependenciesToRemove = new HashSet<Dependency>();
    +124             final ListIterator<Dependency> mainIterator = engine.getDependencies().listIterator();
    +125             //for (Dependency nextDependency : engine.getDependencies()) {
    +126             while (mainIterator.hasNext()) {
    +127                 final Dependency dependency = mainIterator.next();
    +128                 if (mainIterator.hasNext()) {
    +129                     final ListIterator<Dependency> subIterator = engine.getDependencies().listIterator(mainIterator.nextIndex());
    +130                     while (subIterator.hasNext()) {
    +131                         final Dependency nextDependency = subIterator.next();
    +132 
    +133                         if (identifiersMatch(dependency, nextDependency)
    +134                                 && hasSameBasePath(dependency, nextDependency)
    +135                                 && fileNameMatch(dependency, nextDependency)) {
    +136 
    +137                             if (isCore(dependency, nextDependency)) {
    +138                                 dependency.addRelatedDependency(nextDependency);
    +139                                 //move any "related dependencies" to the new "parent" dependency
    +140                                 final Iterator<Dependency> i = nextDependency.getRelatedDependencies().iterator();
    +141                                 while (i.hasNext()) {
    +142                                     dependency.addRelatedDependency(i.next());
    +143                                     i.remove();
    +144                                 }
    +145                                 dependenciesToRemove.add(nextDependency);
    +146                             } else {
    +147                                 if (isCore(nextDependency, dependency)) {
    +148                                     nextDependency.addRelatedDependency(dependency);
    +149                                     //move any "related dependencies" to the new "parent" dependency
    +150                                     final Iterator<Dependency> i = dependency.getRelatedDependencies().iterator();
    +151                                     while (i.hasNext()) {
    +152                                         nextDependency.addRelatedDependency(i.next());
    +153                                         i.remove();
    +154                                     }
    +155                                     dependenciesToRemove.add(dependency);
    +156                                 }
    +157                             }
    +158                         }
    +159                     }
    +160                 }
    +161             }
    +162             //removing dependencies here as ensuring correctness and avoiding ConcurrentUpdateExceptions
    +163             // was difficult because of the inner iterator.
    +164             for (Dependency d : dependenciesToRemove) {
    +165                 engine.getDependencies().remove(d);
    +166             }
    +167         }
    +168     }
    +169 
    +170     /**
    +171      * Attempts to trim a maven repo to a common base path. This is typically
    +172      * [drive]\[repo_location]\repository\[path1]\[path2].
    +173      *
    +174      * @param path the path to trim
    +175      * @return a string representing the base path.
    +176      */
    +177     private String getBaseRepoPath(final String path) {
    +178         int pos = path.indexOf("repository" + File.separator) + 11;
    +179         if (pos < 0) {
    +180             return path;
    +181         }
    +182         int tmp = path.indexOf(File.separator, pos);
    +183         if (tmp <= 0) {
    +184             return path;
    +185         }
    +186         if (tmp > 0) {
    +187             pos = tmp + 1;
    +188         }
    +189         tmp = path.indexOf(File.separator, pos);
    +190         if (tmp > 0) {
    +191             pos = tmp + 1;
    +192         }
    +193         return path.substring(0, pos);
    +194     }
    +195 
    +196     /**
    +197      * Returns true if the file names (and version if it exists) of the two
    +198      * dependencies are sufficiently similiar.
    +199      *
    +200      * @param dependency1 a dependency2 to compare
    +201      * @param dependency2 a dependency2 to compare
    +202      * @return true if the identifiers in the two supplied dependencies are
    +203      * equal
    +204      */
    +205     private boolean fileNameMatch(Dependency dependency1, Dependency dependency2) {
    +206         if (dependency1 == null || dependency1.getFileName() == null
    +207                 || dependency2 == null || dependency2.getFileName() == null) {
    +208             return false;
    +209         }
    +210         String fileName1 = dependency1.getFileName();
    +211         String fileName2 = dependency2.getFileName();
    +212 
    +213         //update to deal with archive analyzer, the starting name maybe the same
    +214         // as this is incorrectly looking at the starting path
    +215         final File one = new File(fileName1);
    +216         final File two = new File(fileName2);
    +217         final String oneParent = one.getParent();
    +218         final String twoParent = two.getParent();
    +219         if (oneParent != null) {
    +220             if (twoParent != null && oneParent.equals(twoParent)) {
    +221                 fileName1 = one.getName();
    +222                 fileName2 = two.getName();
    +223             } else {
    +224                 return false;
    +225             }
    +226         } else if (twoParent != null) {
    +227             return false;
    +228         }
    +229 
    +230         //version check
    +231         final DependencyVersion version1 = DependencyVersionUtil.parseVersion(fileName1);
    +232         final DependencyVersion version2 = DependencyVersionUtil.parseVersion(fileName2);
    +233         if (version1 != null && version2 != null) {
    +234             if (!version1.equals(version2)) {
    +235                 return false;
    +236             }
    +237         }
    +238 
    +239         //filename check
    +240         final Matcher match1 = STARTING_TEXT_PATTERN.matcher(fileName1);
    +241         final Matcher match2 = STARTING_TEXT_PATTERN.matcher(fileName2);
    +242         if (match1.find() && match2.find()) {
    +243             return match1.group().equals(match2.group());
    +244         }
    +245 
    +246         return false;
    +247     }
    +248 
    +249     /**
    +250      * Returns true if the identifiers in the two supplied dependencies are
    +251      * equal.
    +252      *
    +253      * @param dependency1 a dependency2 to compare
    +254      * @param dependency2 a dependency2 to compare
    +255      * @return true if the identifiers in the two supplied dependencies are
    +256      * equal
    +257      */
    +258     private boolean identifiersMatch(Dependency dependency1, Dependency dependency2) {
    +259         if (dependency1 == null || dependency1.getIdentifiers() == null
    +260                 || dependency2 == null || dependency2.getIdentifiers() == null) {
    +261             return false;
    +262         }
    +263         return dependency1.getIdentifiers().size() > 0
    +264                 && dependency2.getIdentifiers().equals(dependency1.getIdentifiers());
    +265     }
    +266 
    +267     /**
    +268      * Determines if the two dependencies have the same base path.
    +269      *
    +270      * @param dependency1 a Dependency object
    +271      * @param dependency2 a Dependency object
    +272      * @return true if the base paths of the dependencies are identical
    +273      */
    +274     private boolean hasSameBasePath(Dependency dependency1, Dependency dependency2) {
    +275         if (dependency1 == null || dependency2 == null) {
    +276             return false;
    +277         }
    +278         final File lFile = new File(dependency1.getFilePath());
    +279         String left = lFile.getParent();
    +280         final File rFile = new File(dependency2.getFilePath());
    +281         String right = rFile.getParent();
    +282         if (left == null) {
    +283             if (right == null) {
    +284                 return true;
    +285             }
    +286             return false;
    +287         }
    +288         if (left.equalsIgnoreCase(right)) {
    +289             return true;
    +290         }
    +291         if (left.matches(".*[/\\\\]repository[/\\\\].*") && right.matches(".*[/\\\\]repository[/\\\\].*")) {
    +292             left = getBaseRepoPath(left);
    +293             right = getBaseRepoPath(right);
    +294         }
    +295         return left.equalsIgnoreCase(right);
    +296     }
    +297 
    +298     /**
    +299      * This is likely a very broken attempt at determining if the 'left'
    +300      * dependency is the 'core' library in comparison to the 'right' library.
    +301      *
    +302      * TODO - consider splitting on /\._-\s/ and checking if all of one side is
    +303      * fully contained in the other With the exception of the word "core". This
    +304      * might work even on groups when we don't have a CVE.
    +305      *
    +306      * @param left the dependency to test
    +307      * @param right the dependency to test against
    +308      * @return a boolean indicating whether or not the left dependency should be
    +309      * considered the "core" version.
    +310      */
    +311     private boolean isCore(Dependency left, Dependency right) {
    +312         final String leftName = left.getFileName().toLowerCase();
    +313         final String rightName = right.getFileName().toLowerCase();
    +314 
    +315         if (rightName.contains("core") && !leftName.contains("core")) {
    +316             return false;
    +317         } else if (!rightName.contains("core") && leftName.contains("core")) {
    +318             return true;
    +319         } else {
    +320             //TODO should we be splitting the name on [-_(.\d)+] and seeing if the
    +321             //  parts are contained in the other side?
    +322             if (leftName.length() > rightName.length()) {
    +323                 return false;
    +324             }
    +325             return true;
    +326         }
    +327     }
    +328 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html new file mode 100644 index 000000000..6333cef89 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FalsePositiveAnalyzer.html @@ -0,0 +1,343 @@ + + + + +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         removeSpuriousCPE(dependency);
    +113         addFalseNegativeCPEs(dependency);
    +114     }
    +115 
    +116     /**
    +117      * <p>Intended to remove spurious CPE entries. By spurious we mean
    +118      * duplicate, less specific CPE entries.</p>
    +119      * <p>Example:</p>
    +120      * <code>
    +121      * cpe:/a:some-vendor:some-product
    +122      * cpe:/a:some-vendor:some-product:1.5
    +123      * cpe:/a:some-vendor:some-product:1.5.2
    +124      * </code>
    +125      * <p>Should be trimmed to:</p>
    +126      * <code>
    +127      * cpe:/a:some-vendor:some-product:1.5.2
    +128      * </code>
    +129      *
    +130      * @param dependency the dependency being analyzed
    +131      */
    +132     private void removeSpuriousCPE(Dependency dependency) {
    +133         final List<Identifier> ids = new ArrayList<Identifier>();
    +134         ids.addAll(dependency.getIdentifiers());
    +135         Collections.sort(ids);
    +136         final ListIterator<Identifier> mainItr = ids.listIterator();
    +137         while (mainItr.hasNext()) {
    +138             final Identifier currentId = mainItr.next();
    +139             final VulnerableSoftware currentCpe = parseCpe(currentId.getType(), currentId.getValue());
    +140             if (currentCpe == null) {
    +141                 continue;
    +142             }
    +143             final ListIterator<Identifier> subItr = ids.listIterator(mainItr.nextIndex());
    +144             while (subItr.hasNext()) {
    +145                 final Identifier nextId = subItr.next();
    +146                 final VulnerableSoftware nextCpe = parseCpe(nextId.getType(), nextId.getValue());
    +147                 if (nextCpe == null) {
    +148                     continue;
    +149                 }
    +150                 //TODO fix the version problem below
    +151                 if (currentCpe.getVendor().equals(nextCpe.getVendor())) {
    +152                     if (currentCpe.getProduct().equals(nextCpe.getProduct())) {
    +153                         // see if one is contained in the other.. remove the contained one from dependency.getIdentifier
    +154                         final String currentVersion = currentCpe.getVersion();
    +155                         final String nextVersion = nextCpe.getVersion();
    +156                         if (currentVersion == null && nextVersion == null) {
    +157                             //how did we get here?
    +158                         } else if (currentVersion == null && nextVersion != null) {
    +159                             dependency.getIdentifiers().remove(currentId);
    +160                         } else if (nextVersion == null && currentVersion != null) {
    +161                             dependency.getIdentifiers().remove(nextId);
    +162                         } else if (currentVersion.length() < nextVersion.length()) {
    +163                             if (nextVersion.startsWith(currentVersion) || "-".equals(currentVersion)) {
    +164                                 dependency.getIdentifiers().remove(currentId);
    +165                             }
    +166                         } else {
    +167                             if (currentVersion.startsWith(nextVersion) || "-".equals(nextVersion)) {
    +168                                 dependency.getIdentifiers().remove(nextId);
    +169                             }
    +170                         }
    +171                     }
    +172                 }
    +173             }
    +174         }
    +175     }
    +176     /**
    +177      * Regex to identify core java libraries and a few other commonly
    +178      * misidentified ones.
    +179      */
    +180     public static final Pattern CORE_JAVA = Pattern.compile("^cpe:/a:(sun|oracle|ibm):(j2[ems]e|"
    +181             + "java(_platfrom_micro_edition|_runtime_environment|_se|virtual_machine|se_development_kit|fx)?|"
    +182             + "jdk|jre|jsf|jsse)($|:.*)");
    +183     /**
    +184      * Regex to identify core java library files. This is currently incomplete.
    +185      */
    +186     public static final Pattern CORE_FILES = Pattern.compile("^((alt[-])?rt|jsf[-].*|jsse|jfxrt|jfr|jce|javaws|deploy|charsets)\\.jar$");
    +187 
    +188     /**
    +189      * Removes any CPE entries for the JDK/JRE unless the filename ends with
    +190      * rt.jar
    +191      *
    +192      * @param dependency the dependency to remove JRE CPEs from
    +193      */
    +194     private void removeJreEntries(Dependency dependency) {
    +195         final Set<Identifier> identifiers = dependency.getIdentifiers();
    +196         final Iterator<Identifier> itr = identifiers.iterator();
    +197         while (itr.hasNext()) {
    +198             final Identifier i = itr.next();
    +199             final Matcher coreCPE = CORE_JAVA.matcher(i.getValue());
    +200             final Matcher coreFiles = CORE_FILES.matcher(dependency.getFileName());
    +201             if (coreCPE.matches() && !coreFiles.matches()) {
    +202                 itr.remove();
    +203             }
    +204 
    +205             //replacecd with the regex above.
    +206             //            if (("cpe:/a:sun:java".equals(i.getValue())
    +207             //                    || "cpe:/a:oracle:java".equals(i.getValue())
    +208             //                    || "cpe:/a:ibm:java".equals(i.getValue())
    +209             //                    || "cpe:/a:sun:j2se".equals(i.getValue())
    +210             //                    || "cpe:/a:oracle:j2se".equals(i.getValue())
    +211             //                    || i.getValue().startsWith("cpe:/a:sun:java:")
    +212             //                    || i.getValue().startsWith("cpe:/a:sun:j2se:")
    +213             //                    || i.getValue().startsWith("cpe:/a:sun:java:jre")
    +214             //                    || i.getValue().startsWith("cpe:/a:sun:java:jdk")
    +215             //                    || i.getValue().startsWith("cpe:/a:sun:java_se")
    +216             //                    || i.getValue().startsWith("cpe:/a:oracle:java_se")
    +217             //                    || i.getValue().startsWith("cpe:/a:oracle:java:")
    +218             //                    || i.getValue().startsWith("cpe:/a:oracle:j2se:")
    +219             //                    || i.getValue().startsWith("cpe:/a:oracle:jre")
    +220             //                    || i.getValue().startsWith("cpe:/a:oracle:jdk")
    +221             //                    || i.getValue().startsWith("cpe:/a:ibm:java:"))
    +222             //                    && !dependency.getFileName().toLowerCase().endsWith("rt.jar")) {
    +223             //                itr.remove();
    +224             //            }
    +225         }
    +226     }
    +227 
    +228     /**
    +229      * Parses a CPE string into an IndexEntry.
    +230      *
    +231      * @param type the type of identifier
    +232      * @param value the cpe identifier to parse
    +233      * @return an VulnerableSoftware object constructed from the identifier
    +234      */
    +235     private VulnerableSoftware parseCpe(String type, String value) {
    +236         if (!"cpe".equals(type)) {
    +237             return null;
    +238         }
    +239         final VulnerableSoftware cpe = new VulnerableSoftware();
    +240         try {
    +241             cpe.parseName(value);
    +242         } catch (UnsupportedEncodingException ex) {
    +243             Logger.getLogger(FalsePositiveAnalyzer.class.getName()).log(Level.FINEST, null, ex);
    +244             return null;
    +245         }
    +246         return cpe;
    +247     }
    +248 
    +249     /**
    +250      * Removes bad CPE matches for a dependency. Unfortunately, right now these
    +251      * are hard-coded patches for specific problems identified when testing this
    +252      * on a LARGE volume of jar files.
    +253      *
    +254      * @param dependency the dependency to analyze
    +255      */
    +256     private void removeBadMatches(Dependency dependency) {
    +257         final Set<Identifier> identifiers = dependency.getIdentifiers();
    +258         final Iterator<Identifier> itr = identifiers.iterator();
    +259 
    +260         /* TODO - can we utilize the pom's groupid and artifactId to filter??? most of
    +261          * these are due to low quality data.  Other idea would be to say any CPE
    +262          * found based on LOW confidence evidence should have a different CPE type? (this
    +263          * might be a better solution then just removing the URL for "best-guess" matches).
    +264          */
    +265 
    +266         //Set<Evidence> groupId = dependency.getVendorEvidence().getEvidence("pom", "groupid");
    +267         //Set<Evidence> artifactId = dependency.getVendorEvidence().getEvidence("pom", "artifactid");
    +268 
    +269         while (itr.hasNext()) {
    +270             final Identifier i = itr.next();
    +271             //TODO move this startswith expression to a configuration file?
    +272             if ("cpe".equals(i.getType())) {
    +273                 if ((i.getValue().matches(".*c\\+\\+.*")
    +274                         || i.getValue().startsWith("cpe:/a:jquery:jquery")
    +275                         || i.getValue().startsWith("cpe:/a:prototypejs:prototype")
    +276                         || i.getValue().startsWith("cpe:/a:yahoo:yui"))
    +277                         && dependency.getFileName().toLowerCase().endsWith(".jar")) {
    +278                     itr.remove();
    +279                 } else if (i.getValue().startsWith("cpe:/a:file:file")
    +280                         || i.getValue().startsWith("cpe:/a:mozilla:mozilla")
    +281                         || i.getValue().startsWith("cpe:/a:ssh:ssh")) {
    +282                     itr.remove();
    +283                 }
    +284             }
    +285         }
    +286     }
    +287 
    +288     /**
    +289      * There are some known CPE entries, specifically regarding sun and oracle
    +290      * products due to the acquisition and changes in product names, that based
    +291      * on given evidence we can add the related CPE entries to ensure a complete
    +292      * list of CVE entries.
    +293      *
    +294      * @param dependency the dependency being analyzed
    +295      */
    +296     private void addFalseNegativeCPEs(Dependency dependency) {
    +297         final Iterator<Identifier> itr = dependency.getIdentifiers().iterator();
    +298         while (itr.hasNext()) {
    +299             final Identifier i = itr.next();
    +300             if ("cpe".equals(i.getType()) && i.getValue() != null
    +301                     && (i.getValue().startsWith("cpe:/a:oracle:opensso:")
    +302                     || i.getValue().startsWith("cpe:/a:oracle:opensso_enterprise:")
    +303                     || i.getValue().startsWith("cpe:/a:sun:opensso_enterprise:")
    +304                     || i.getValue().startsWith("cpe:/a:sun:opensso:"))) {
    +305                 final String newCpe = String.format("cpe:/a:sun:opensso_enterprise:%s", i.getValue().substring(22));
    +306                 final String newCpe2 = String.format("cpe:/a:oracle:opensso_enterprise:%s", i.getValue().substring(22));
    +307                 final String newCpe3 = String.format("cpe:/a:sun:opensso:%s", i.getValue().substring(22));
    +308                 final String newCpe4 = String.format("cpe:/a:oracle:opensso:%s", i.getValue().substring(22));
    +309                 try {
    +310                     dependency.addIdentifier("cpe",
    +311                             newCpe,
    +312                             String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe, "UTF-8")));
    +313                     dependency.addIdentifier("cpe",
    +314                             newCpe2,
    +315                             String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe2, "UTF-8")));
    +316                     dependency.addIdentifier("cpe",
    +317                             newCpe3,
    +318                             String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe3, "UTF-8")));
    +319                     dependency.addIdentifier("cpe",
    +320                             newCpe4,
    +321                             String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(newCpe4, "UTF-8")));
    +322                 } catch (UnsupportedEncodingException ex) {
    +323                     Logger.getLogger(FalsePositiveAnalyzer.class
    +324                             .getName()).log(Level.FINE, null, ex);
    +325                 }
    +326             }
    +327         }
    +328     }
    +329 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/FileNameAnalyzer.html new file mode 100644 index 000000000..51ccf8969 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/HintAnalyzer.html new file mode 100644 index 000000000..d7cdbd3fb --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html new file mode 100644 index 000000000..3eb0a91ff --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JarAnalyzer.html @@ -0,0 +1,1126 @@ + + + + +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");
    +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) {
    +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) {
    +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.equals(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.equals(Attributes.Name.IMPLEMENTATION_VERSION.toString())) {
    +588                     foundSomething = true;
    +589                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +590                 } else if (key.equals(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.equals(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.equals(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.equals(BUNDLE_NAME)) {
    +604                     foundSomething = true;
    +605                     productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +606                     addMatchingValues(classInformation, value, productEvidence);
    +607                 } else if (key.equals(BUNDLE_VENDOR)) {
    +608                     foundSomething = true;
    +609                     vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +610                     addMatchingValues(classInformation, value, vendorEvidence);
    +611                 } else if (key.equals(BUNDLE_VERSION)) {
    +612                     foundSomething = true;
    +613                     versionEvidence.addEvidence(source, key, value, Evidence.Confidence.HIGH);
    +614                 } else if (key.equals(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                             versionEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +641                         } else if (key.contains("title")) {
    +642                             productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +643                             addMatchingValues(classInformation, value, productEvidence);
    +644                         } else if (key.contains("vendor")) {
    +645                             vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +646                             addMatchingValues(classInformation, value, vendorEvidence);
    +647                         } else if (key.contains("name")) {
    +648                             productEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +649                             vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.MEDIUM);
    +650                             addMatchingValues(classInformation, value, vendorEvidence);
    +651                             addMatchingValues(classInformation, value, productEvidence);
    +652                         } else if (key.contains("license")) {
    +653                             addLicense(dependency, value);
    +654                         } else {
    +655                             if (key.contains("description")) {
    +656                                 addDescription(dependency, value, "manifest", key);
    +657                             } else {
    +658                                 productEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +659                                 vendorEvidence.addEvidence(source, key, value, Evidence.Confidence.LOW);
    +660                                 addMatchingValues(classInformation, value, vendorEvidence);
    +661                                 addMatchingValues(classInformation, value, productEvidence);
    +662                                 if (value.matches(".*\\d.*")) {
    +663                                     final StringTokenizer tokenizer = new StringTokenizer(value, " ");
    +664                                     while (tokenizer.hasMoreElements()) {
    +665                                         final String s = tokenizer.nextToken();
    +666                                         if (s.matches("^[0-9.]+$")) {
    +667                                             versionEvidence.addEvidence(source, key, s, Evidence.Confidence.LOW);
    +668                                         }
    +669                                     }
    +670                                 }
    +671                             }
    +672                         }
    +673                     }
    +674                 }
    +675             }
    +676         } finally {
    +677             if (jar != null) {
    +678                 jar.close();
    +679             }
    +680         }
    +681         return foundSomething;
    +682     }
    +683 
    +684     /**
    +685      * Adds a description to the given dependency.
    +686      *
    +687      * @param dependency a dependency
    +688      * @param description the description
    +689      * @param source the source of the evidence
    +690      * @param key the "name" of the evidence
    +691      */
    +692     private void addDescription(Dependency dependency, String description, String source, String key) {
    +693         if (dependency.getDescription() == null) {
    +694             dependency.setDescription(description);
    +695         }
    +696         String desc;
    +697         if (HTML_DETECTION_PATTERN.matcher(description).find()) {
    +698             desc = Jsoup.parse(description).text();
    +699         } else {
    +700             desc = description;
    +701         }
    +702         dependency.setDescription(desc);
    +703         if (desc.length() > 100) {
    +704             final int posSuchAs = desc.toLowerCase().indexOf("such as ", 100);
    +705             final int posLike = desc.toLowerCase().indexOf("like ", 100);
    +706             int pos = -1;
    +707             if (posLike > 0 && posSuchAs > 0) {
    +708                 pos = posLike > posSuchAs ? posLike : posSuchAs;
    +709             } else if (posLike > 0) {
    +710                 pos = posLike;
    +711             } else if (posSuchAs > 0) {
    +712                 pos = posSuchAs;
    +713             }
    +714             String descToUse = desc;
    +715             if (pos > 0) {
    +716                 final StringBuilder sb = new StringBuilder(pos + 3);
    +717                 sb.append(desc.substring(0, pos));
    +718                 sb.append("...");
    +719                 descToUse = sb.toString();
    +720             }
    +721             dependency.getProductEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
    +722             dependency.getVendorEvidence().addEvidence(source, key, descToUse, Evidence.Confidence.LOW);
    +723         } else {
    +724             dependency.getProductEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
    +725             dependency.getVendorEvidence().addEvidence(source, key, desc, Evidence.Confidence.MEDIUM);
    +726         }
    +727     }
    +728 
    +729     /**
    +730      * Adds a license to the given dependency.
    +731      *
    +732      * @param d a dependency
    +733      * @param license the license
    +734      */
    +735     private void addLicense(Dependency d, String license) {
    +736         if (d.getLicense() == null) {
    +737             d.setLicense(license);
    +738         } else if (!d.getLicense().contains(license)) {
    +739             d.setLicense(d.getLicense() + NEWLINE + license);
    +740         }
    +741     }
    +742 
    +743     /**
    +744      * The initialize method does nothing for this Analyzer.
    +745      */
    +746     public void initialize() {
    +747         //do nothing
    +748     }
    +749 
    +750     /**
    +751      * The close method does nothing for this Analyzer.
    +752      */
    +753     public void close() {
    +754         //do nothing
    +755     }
    +756 
    +757     /**
    +758      * <p>A utility function that will interpolate strings based on values given
    +759      * in the properties file. It will also interpolate the strings contained
    +760      * within the properties file so that properties can reference other
    +761      * properties.</p>
    +762      * <p><b>Note:</b> if there is no property found the reference will be
    +763      * removed. In other words, if the interpolated string will be replaced with
    +764      * an empty string.
    +765      * </p>
    +766      * <p>Example:</p>
    +767      * <code>
    +768      * Properties p = new Properties();
    +769      * p.setProperty("key", "value");
    +770      * String s = interpolateString("'${key}' and '${nothing}'", p);
    +771      * System.out.println(s);
    +772      * </code>
    +773      * <p>Will result in:</p>
    +774      * <code>
    +775      * 'value' and ''
    +776      * </code>
    +777      *
    +778      * @param text the string that contains references to properties.
    +779      * @param properties a collection of properties that may be referenced
    +780      * within the text.
    +781      * @return the interpolated text.
    +782      */
    +783     protected String interpolateString(String text, Properties properties) {
    +784         Properties props = properties;
    +785         if (text == null) {
    +786             return text;
    +787         }
    +788         if (props == null) {
    +789             props = new Properties();
    +790         }
    +791 
    +792         final int pos = text.indexOf("${");
    +793         if (pos < 0) {
    +794             return text;
    +795         }
    +796         final int end = text.indexOf("}");
    +797         if (end < pos) {
    +798             return text;
    +799         }
    +800 
    +801         final String propName = text.substring(pos + 2, end);
    +802         String propValue = interpolateString(props.getProperty(propName), props);
    +803         if (propValue == null) {
    +804             propValue = "";
    +805         }
    +806         final StringBuilder sb = new StringBuilder(propValue.length() + text.length());
    +807         sb.append(text.subSequence(0, pos));
    +808         sb.append(propValue);
    +809         sb.append(text.substring(end + 1));
    +810         return interpolateString(sb.toString(), props); //yes yes, this should be a loop...
    +811     }
    +812 
    +813     /**
    +814      * Determines if the key value pair from the manifest is for an "import"
    +815      * type entry for package names.
    +816      *
    +817      * @param key the key from the manifest
    +818      * @param value the value from the manifest
    +819      * @return true or false depending on if it is believed the entry is an
    +820      * "import" entry
    +821      */
    +822     private boolean isImportPackage(String key, String value) {
    +823         final Pattern packageRx = Pattern.compile("^((([a-zA-Z_#\\$0-9]\\.)+)\\s*\\;\\s*)+$");
    +824         if (packageRx.matcher(value).matches()) {
    +825             return (key.contains("import") || key.contains("include"));
    +826         }
    +827         return false;
    +828     }
    +829 
    +830     /**
    +831      * Cycles through an enumeration of JarEntries, contained within the
    +832      * dependency, and returns a list of the class names. This does not include
    +833      * core Java package names (i.e. java.* or javax.*).
    +834      *
    +835      * @param dependency the dependency being analyzed
    +836      * @return an list of fully qualified class names
    +837      */
    +838     private ArrayList<ClassNameInformation> collectClassNames(Dependency dependency) {
    +839         final ArrayList<ClassNameInformation> classNames = new ArrayList<ClassNameInformation>();
    +840         JarFile jar = null;
    +841         try {
    +842             jar = new JarFile(dependency.getActualFilePath());
    +843             final Enumeration entries = jar.entries();
    +844             while (entries.hasMoreElements()) {
    +845                 final JarEntry entry = (JarEntry) entries.nextElement();
    +846                 final String name = entry.getName().toLowerCase();
    +847                 //no longer stripping "|com\\.sun" - there are some com.sun jar files with CVEs.
    +848                 if (name.endsWith(".class") && !name.matches("^javax?\\..*$")) {
    +849                     final ClassNameInformation className = new ClassNameInformation(name.substring(0, name.length() - 6));
    +850                     classNames.add(className);
    +851                 }
    +852             }
    +853         } catch (IOException ex) {
    +854             final String msg = String.format("Unable to open jar file '%s'.", dependency.getFileName());
    +855             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.WARNING, msg);
    +856             Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +857         } finally {
    +858             if (jar != null) {
    +859                 try {
    +860                     jar.close();
    +861                 } catch (IOException ex) {
    +862                     Logger.getLogger(JarAnalyzer.class.getName()).log(Level.FINEST, null, ex);
    +863                 }
    +864             }
    +865         }
    +866         return classNames;
    +867     }
    +868 
    +869     /**
    +870      * Cycles through the list of class names and places the package levels 0-3
    +871      * into the provided maps for vendor and product. This is helpful when
    +872      * analyzing vendor/product as many times this is included in the package
    +873      * name.
    +874      *
    +875      * @param classNames a list of class names
    +876      * @param vendor HashMap of possible vendor names from package names (e.g.
    +877      * owasp)
    +878      * @param product HashMap of possible product names from package names (e.g.
    +879      * dependencycheck)
    +880      */
    +881     private void analyzeFullyQualifiedClassNames(ArrayList<ClassNameInformation> classNames,
    +882             HashMap<String, Integer> vendor, HashMap<String, Integer> product) {
    +883         for (ClassNameInformation entry : classNames) {
    +884             final ArrayList<String> list = entry.getPackageStructure();
    +885             addEntry(vendor, list.get(0));
    +886 
    +887             if (list.size() == 2) {
    +888                 addEntry(product, list.get(1));
    +889             }
    +890             if (list.size() == 3) {
    +891                 addEntry(vendor, list.get(1));
    +892                 addEntry(product, list.get(1));
    +893                 addEntry(product, list.get(2));
    +894             }
    +895             if (list.size() >= 4) {
    +896                 addEntry(vendor, list.get(1));
    +897                 addEntry(vendor, list.get(2));
    +898                 addEntry(product, list.get(1));
    +899                 addEntry(product, list.get(2));
    +900                 addEntry(product, list.get(3));
    +901             }
    +902         }
    +903     }
    +904 
    +905     /**
    +906      * Adds an entry to the specified collection and sets the Integer (e.g. the
    +907      * count) to 1. If the entry already exists in the collection then the
    +908      * Integer is incremented by 1.
    +909      *
    +910      * @param collection a collection of strings and their occurrence count
    +911      * @param key the key to add to the collection
    +912      */
    +913     private void addEntry(HashMap<String, Integer> collection, String key) {
    +914         if (collection.containsKey(key)) {
    +915             collection.put(key, collection.get(key) + 1);
    +916         } else {
    +917             collection.put(key, 1);
    +918         }
    +919     }
    +920 
    +921     /**
    +922      * Cycles through the collection of class name information to see if parts
    +923      * of the package names are contained in the provided value. If found, it
    +924      * will be added as the HIGHEST confidence evidence because we have more
    +925      * then one source corroborating the value.
    +926      *
    +927      * @param classes a collection of class name information
    +928      * @param value the value to check to see if it contains a package name
    +929      * @param evidence the evidence collection to add new entries too
    +930      */
    +931     private void addMatchingValues(ArrayList<ClassNameInformation> classes, String value, EvidenceCollection evidence) {
    +932         if (value == null || value.isEmpty()) {
    +933             return;
    +934         }
    +935         final String text = value.toLowerCase();
    +936         for (ClassNameInformation cni : classes) {
    +937             for (String key : cni.getPackageStructure()) {
    +938                 if (text.contains(key)) { //note, package structure elements are already lowercase.
    +939                     evidence.addEvidence("jar", "package name", key, Evidence.Confidence.HIGHEST);
    +940                 }
    +941             }
    +942         }
    +943     }
    +944 
    +945     /**
    +946      * <p><b>This is currently a failed implementation.</b> Part of the issue is
    +947      * I was trying to solve the wrong problem. Instead of multiple POMs being
    +948      * in the JAR to just add information about dependencies - I didn't realize
    +949      * until later that I was looking at an uber-jar (aka fat-jar) that included
    +950      * all of its dependencies.</p>
    +951      * <p>I'm leaving this method in the source tree, entirely commented out
    +952      * until a solution https://github.com/jeremylong/DependencyCheck/issues/11
    +953      * has been implemented.</p>
    +954      * <p>Takes a list of pom entries from a JAR file and attempts to filter it
    +955      * down to the pom related to the jar (rather then the pom entry for a
    +956      * dependency).</p>
    +957      *
    +958      * @param pomEntries a list of pom entries
    +959      * @param classes a list of fully qualified classes from the JAR file
    +960      * @return the list of pom entries that are associated with the jar being
    +961      * analyzed rather then the dependent poms
    +962      */
    +963     private List<String> filterPomEntries(List<String> pomEntries, ArrayList<ClassNameInformation> classes) {
    +964         return pomEntries;
    +965 //        final HashMap<String, Integer> usePoms = new HashMap<String, Integer>();
    +966 //        final ArrayList<String> possiblePoms = new ArrayList<String>();
    +967 //        for (String entry : pomEntries) {
    +968 //            //todo validate that the starts with is correct... or does it start with a ./ or /?
    +969 //            // is it different on different platforms?
    +970 //            if (entry.startsWith("META-INF/maven/")) {
    +971 //                //trim the meta-inf/maven and pom.xml...
    +972 //                final String pomPath = entry.substring(15, entry.length() - 8).toLowerCase();
    +973 //                final String[] parts = pomPath.split("/");
    +974 //                if (parts == null || parts.length != 2) { //misplaced pom?
    +975 //                    //TODO add logging to FINE
    +976 //                    possiblePoms.add(entry);
    +977 //                }
    +978 //                parts[0] = parts[0].replace('.', '/');
    +979 //                parts[1] = parts[1].replace('.', '/');
    +980 //                for (ClassNameInformation cni : classes) {
    +981 //                    final String name = cni.getName();
    +982 //                    if (StringUtils.containsIgnoreCase(name, parts[0])) {
    +983 //                        addEntry(usePoms, entry);
    +984 //                    }
    +985 //                    if (StringUtils.containsIgnoreCase(name, parts[1])) {
    +986 //                        addEntry(usePoms, entry);
    +987 //                    }
    +988 //                }
    +989 //            } else { // we have a JAR file with an incorrect POM layout...
    +990 //                //TODO add logging to FINE
    +991 //                possiblePoms.add(entry);
    +992 //            }
    +993 //        }
    +994 //        List<String> retValue;
    +995 //        if (usePoms.isEmpty()) {
    +996 //            if (possiblePoms.isEmpty()) {
    +997 //                retValue = pomEntries;
    +998 //            } else {
    +999 //                retValue = possiblePoms;
    +1000 //            }
    +1001 //        } else {
    +1002 //            retValue = new ArrayList<String>();
    +1003 //            int maxCount = 0;
    +1004 //            for (Map.Entry<String, Integer> entry : usePoms.entrySet()) {
    +1005 //                final int current = entry.getValue().intValue();
    +1006 //                if (current > maxCount) {
    +1007 //                    maxCount = current;
    +1008 //                    retValue.clear();
    +1009 //                    retValue.add(entry.getKey());
    +1010 //                } else if (current == maxCount) {
    +1011 //                    retValue.add(entry.getKey());
    +1012 //                }
    +1013 //            }
    +1014 //        }
    +1015 //        return retValue;
    +1016     }
    +1017 
    +1018     /**
    +1019      * Simple check to see if the attribute from a manifest is just a package
    +1020      * name.
    +1021      *
    +1022      * @param key the key of the value to check
    +1023      * @param value the value to check
    +1024      * @return true if the value looks like a java package name, otherwise false
    +1025      */
    +1026     private boolean isPackage(String key, String value) {
    +1027 
    +1028         return !key.matches(".*(version|title|vendor|name|license|description).*")
    +1029                 && value.matches("^([a-zA-Z_][a-zA-Z0-9_\\$]*(\\.[a-zA-Z_][a-zA-Z0-9_\\$]*)*)?$");
    +1030     }
    +1031 
    +1032     /**
    +1033      * Stores information about a class name.
    +1034      */
    +1035     protected static class ClassNameInformation {
    +1036 
    +1037         /**
    +1038          * Stores information about a given class name. This class will keep the
    +1039          * fully qualified class name and a list of the important parts of the
    +1040          * package structure. Up to the first four levels of the package
    +1041          * structure are stored, excluding a leading "org" or "com". Example:
    +1042          * <code>ClassNameInformation obj = new ClassNameInformation("org.owasp.dependencycheck.analyzer.JarAnalyzer");
    +1043          * System.out.println(obj.getName());
    +1044          * for (String p : obj.getPackageStructure())
    +1045          *     System.out.println(p);
    +1046          * </code> Would result in:
    +1047          * <code>org.owasp.dependencycheck.analyzer.JarAnalyzer
    +1048          * owasp
    +1049          * dependencycheck
    +1050          * analyzer
    +1051          * jaranalyzer</code>
    +1052          *
    +1053          * @param className a fully qualified class name
    +1054          */
    +1055         ClassNameInformation(String className) {
    +1056             name = className;
    +1057             if (name.contains("/")) {
    +1058                 final String[] tmp = className.toLowerCase().split("/");
    +1059                 int start = 0;
    +1060                 int end = 3;
    +1061                 if ("com".equals(tmp[0]) || "org".equals(tmp[0])) {
    +1062                     start = 1;
    +1063                     end = 4;
    +1064                 }
    +1065                 if (tmp.length <= end) {
    +1066                     end = tmp.length - 1;
    +1067                 }
    +1068                 for (int i = start; i <= end; i++) {
    +1069                     packageStructure.add(tmp[i]);
    +1070                 }
    +1071             } else {
    +1072                 packageStructure.add(name);
    +1073             }
    +1074         }
    +1075         /**
    +1076          * The fully qualified class name.
    +1077          */
    +1078         private String name;
    +1079 
    +1080         /**
    +1081          * Get the value of name
    +1082          *
    +1083          * @return the value of name
    +1084          */
    +1085         public String getName() {
    +1086             return name;
    +1087         }
    +1088 
    +1089         /**
    +1090          * Set the value of name
    +1091          *
    +1092          * @param name new value of name
    +1093          */
    +1094         public void setName(String name) {
    +1095             this.name = name;
    +1096         }
    +1097         /**
    +1098          * Up to the first four levels of the package structure, excluding a
    +1099          * leading "org" or "com".
    +1100          */
    +1101         private ArrayList<String> packageStructure = new ArrayList<String>();
    +1102 
    +1103         /**
    +1104          * Get the value of packageStructure
    +1105          *
    +1106          * @return the value of packageStructure
    +1107          */
    +1108         public ArrayList<String> getPackageStructure() {
    +1109             return packageStructure;
    +1110         }
    +1111     }
    +1112 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/JavaScriptAnalyzer.html new file mode 100644 index 000000000..1b945fe4c --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html new file mode 100644 index 000000000..ab40df35f --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-frame.html @@ -0,0 +1,60 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.analyzer + + + + +

    + org.owasp.dependencycheck.analyzer +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html new file mode 100644 index 000000000..57aaf8405 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/analyzer/package-summary.html @@ -0,0 +1,127 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.analyzer + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.analyzer

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractAnalyzer +
    + AnalysisException +
    + AnalysisPhase +
    + Analyzer +
    + AnalyzerService +
    + ArchiveAnalyzer +
    + ClassNameInformation +
    + DependencyBundlingAnalyzer +
    + FalsePositiveAnalyzer +
    + FileNameAnalyzer +
    + HintAnalyzer +
    + JarAnalyzer +
    + JavaScriptAnalyzer +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/CachedWebDataSource.html new file mode 100644 index 000000000..3a81522d7 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateException.html new file mode 100644 index 000000000..7f52e9024 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/UpdateService.html new file mode 100644 index 000000000..d3349faf4 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html new file mode 100644 index 000000000..435adf574 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/CPEAnalyzer.html @@ -0,0 +1,808 @@ + + + + +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.data.cpe;
    +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.analyzer.AnalysisException;
    +39  import org.owasp.dependencycheck.analyzer.AnalysisPhase;
    +40  import org.owasp.dependencycheck.data.lucene.LuceneUtils;
    +41  import org.owasp.dependencycheck.dependency.Dependency;
    +42  import org.owasp.dependencycheck.dependency.Evidence;
    +43  import org.owasp.dependencycheck.dependency.Evidence.Confidence;
    +44  import org.owasp.dependencycheck.dependency.EvidenceCollection;
    +45  import org.owasp.dependencycheck.analyzer.Analyzer;
    +46  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +47  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +48  import org.owasp.dependencycheck.dependency.Identifier;
    +49  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +50  import org.owasp.dependencycheck.utils.DependencyVersion;
    +51  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +52  
    +53  /**
    +54   * CPEAnalyzer is a utility class that takes a project dependency and attempts
    +55   * to discern if there is an associated CPE. It uses the evidence contained
    +56   * within the dependency to search the Lucene index.
    +57   *
    +58   * @author Jeremy Long (jeremy.long@owasp.org)
    +59   */
    +60  public class CPEAnalyzer implements Analyzer {
    +61  
    +62      /**
    +63       * The maximum number of query results to return.
    +64       */
    +65      static final int MAX_QUERY_RESULTS = 25;
    +66      /**
    +67       * The weighting boost to give terms when constructing the Lucene query.
    +68       */
    +69      static final String WEIGHTING_BOOST = "^5";
    +70      /**
    +71       * A string representation of a regular expression defining characters
    +72       * utilized within the CPE Names.
    +73       */
    +74      static final String CLEANSE_CHARACTER_RX = "[^A-Za-z0-9 ._-]";
    +75      /**
    +76       * A string representation of a regular expression used to remove all but
    +77       * alpha characters.
    +78       */
    +79      static final String CLEANSE_NONALPHA_RX = "[^A-Za-z]*";
    +80      /**
    +81       * The additional size to add to a new StringBuilder to account for extra
    +82       * data that will be written into the string.
    +83       */
    +84      static final int STRING_BUILDER_BUFFER = 20;
    +85      /**
    +86       * The CPE Index.
    +87       */
    +88      private Index cpe;
    +89      /**
    +90       * The CVE Database.
    +91       */
    +92      private CveDB cve;
    +93  
    +94      /**
    +95       * Opens the data source.
    +96       *
    +97       * @throws IOException when the Lucene directory to be queried does not
    +98       * exist or is corrupt.
    +99       * @throws DatabaseException when the database throws an exception. This
    +100      * usually occurs when the database is in use by another process.
    +101      */
    +102     public void open() throws IOException, DatabaseException {
    +103         cpe = new Index();
    +104         cpe.open();
    +105         cve = new CveDB();
    +106         try {
    +107             cve.open();
    +108         } catch (SQLException ex) {
    +109             Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +110             throw new DatabaseException("Unable to open the cve db", ex);
    +111         } catch (ClassNotFoundException ex) {
    +112             Logger.getLogger(CPEAnalyzer.class.getName()).log(Level.FINE, null, ex);
    +113             throw new DatabaseException("Unable to open the cve db", ex);
    +114         }
    +115     }
    +116 
    +117     /**
    +118      * Closes the data source.
    +119      */
    +120     @Override
    +121     public void close() {
    +122         cpe.close();
    +123         cve.close();
    +124     }
    +125 
    +126     /**
    +127      * Returns the status of the data source - is the index open.
    +128      *
    +129      * @return true or false.
    +130      */
    +131     public boolean isOpen() {
    +132         return (cpe != null) && cpe.isOpen();
    +133     }
    +134 
    +135     /**
    +136      * Ensures that the Lucene index is closed.
    +137      *
    +138      * @throws Throwable when a throwable is thrown.
    +139      */
    +140     @Override
    +141     protected void finalize() throws Throwable {
    +142         super.finalize();
    +143         if (isOpen()) {
    +144             close();
    +145         }
    +146     }
    +147 
    +148     /**
    +149      * Searches the data store of CPE entries, trying to identify the CPE for
    +150      * the given dependency based on the evidence contained within. The
    +151      * dependency passed in is updated with any identified CPE values.
    +152      *
    +153      * @param dependency the dependency to search for CPE entries on.
    +154      * @throws CorruptIndexException is thrown when the Lucene index is corrupt.
    +155      * @throws IOException is thrown when an IOException occurs.
    +156      * @throws ParseException is thrown when the Lucene query cannot be parsed.
    +157      */
    +158     protected void determineCPE(Dependency dependency) throws CorruptIndexException, IOException, ParseException {
    +159         Confidence vendorConf = Confidence.HIGHEST;
    +160         Confidence productConf = Confidence.HIGHEST;
    +161 
    +162         String vendors = addEvidenceWithoutDuplicateTerms("", dependency.getVendorEvidence(), vendorConf);
    +163         String products = addEvidenceWithoutDuplicateTerms("", dependency.getProductEvidence(), productConf);
    +164 
    +165         //boolean found = false;
    +166         int ctr = 0;
    +167         do {
    +168             if (!vendors.isEmpty() && !products.isEmpty()) {
    +169                 final List<IndexEntry> entries = searchCPE(vendors, products, dependency.getProductEvidence().getWeighting(),
    +170                         dependency.getVendorEvidence().getWeighting());
    +171 
    +172                 for (IndexEntry e : entries) {
    +173                     if (verifyEntry(e, dependency)) {
    +174                         //found = true; // we found a vendor/product pair. Now find version from the cve db.
    +175                         final String vendor = e.getVendor();
    +176                         final String product = e.getProduct();
    +177                         // cve.getVersions(vendor, product);
    +178                         determineIdentifiers(dependency, vendor, product);
    +179                     }
    +180                 }
    +181             }
    +182             //if (!found) {
    +183             vendorConf = reduceConfidence(vendorConf);
    +184             if (dependency.getVendorEvidence().contains(vendorConf)) {
    +185                 //vendors += " " + dependency.getVendorEvidence().toString(vendorConf);
    +186                 vendors = addEvidenceWithoutDuplicateTerms(vendors, dependency.getVendorEvidence(), vendorConf);
    +187             }
    +188             productConf = reduceConfidence(productConf);
    +189             if (dependency.getProductEvidence().contains(productConf)) {
    +190                 //products += " " + dependency.getProductEvidence().toString(productConf);
    +191                 products = addEvidenceWithoutDuplicateTerms(products, dependency.getProductEvidence(), productConf);
    +192             }
    +193             //}
    +194             //} while (!found && (++ctr) < 4);
    +195         } while ((++ctr) < 4);
    +196     }
    +197 
    +198     /**
    +199      * Returns the text created by concatenating the text and the values from
    +200      * the EvidenceCollection (filtered for a specific confidence). This
    +201      * attempts to prevent duplicate terms from being added.<br/<br/> Note, if
    +202      * the evidence is longer then 200 characters it will be truncated.
    +203      *
    +204      * @param text the base text.
    +205      * @param ec an EvidenceCollection
    +206      * @param confidenceFilter a Confidence level to filter the evidence by.
    +207      * @return the new evidence text
    +208      */
    +209     private String addEvidenceWithoutDuplicateTerms(final String text, final EvidenceCollection ec, Confidence confidenceFilter) {
    +210         final String txt = (text == null) ? "" : text;
    +211         final StringBuilder sb = new StringBuilder(txt.length() + (20 * ec.size()));
    +212         sb.append(' ').append(txt).append(' ');
    +213         for (Evidence e : ec.iterator(confidenceFilter)) {
    +214             String value = e.getValue();
    +215 
    +216             //hack to get around the fact that lucene does a really good job of recognizing domains and not
    +217             // splitting them. TODO - put together a better lucene analyzer specific to the domain.
    +218             if (value.startsWith("http://")) {
    +219                 value = value.substring(7).replaceAll("\\.", " ");
    +220             }
    +221             if (value.startsWith("https://")) {
    +222                 value = value.substring(8).replaceAll("\\.", " ");
    +223             }
    +224             if (sb.indexOf(" " + value + " ") < 0) {
    +225                 sb.append(value).append(' ');
    +226             }
    +227         }
    +228         return sb.toString().trim();
    +229     }
    +230 
    +231     /**
    +232      * Reduces the given confidence by one level. This returns LOW if the
    +233      * confidence passed in is not HIGH.
    +234      *
    +235      * @param c the confidence to reduce.
    +236      * @return One less then the confidence passed in.
    +237      */
    +238     private Confidence reduceConfidence(final Confidence c) {
    +239         if (c == Confidence.HIGHEST) {
    +240             return Confidence.HIGH;
    +241         } else if (c == Confidence.HIGH) {
    +242             return Confidence.MEDIUM;
    +243         } else {
    +244             return Confidence.LOW;
    +245         }
    +246     }
    +247 
    +248     /**
    +249      * <p>Searches the Lucene CPE index to identify possible CPE entries
    +250      * associated with the supplied vendor, product, and version.</p>
    +251      *
    +252      * <p>If either the vendorWeightings or productWeightings lists have been
    +253      * populated this data is used to add weighting factors to the search.</p>
    +254      *
    +255      * @param vendor the text used to search the vendor field
    +256      * @param product the text used to search the product field
    +257      * @param vendorWeightings a list of strings to use to add weighting factors
    +258      * to the vendor field
    +259      * @param productWeightings Adds a list of strings that will be used to add
    +260      * weighting factors to the product search
    +261      * @return a list of possible CPE values
    +262      * @throws CorruptIndexException when the Lucene index is corrupt
    +263      * @throws IOException when the Lucene index is not found
    +264      * @throws ParseException when the generated query is not valid
    +265      */
    +266     protected List<IndexEntry> searchCPE(String vendor, String product,
    +267             Set<String> vendorWeightings, Set<String> productWeightings)
    +268             throws CorruptIndexException, IOException, ParseException {
    +269         final ArrayList<IndexEntry> ret = new ArrayList<IndexEntry>(MAX_QUERY_RESULTS);
    +270 
    +271         final String searchString = buildSearch(vendor, product, vendorWeightings, productWeightings);
    +272         if (searchString == null) {
    +273             return ret;
    +274         }
    +275 
    +276         final TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);
    +277         for (ScoreDoc d : docs.scoreDocs) {
    +278             final Document doc = cpe.getDocument(d.doc);
    +279             final IndexEntry entry = new IndexEntry();
    +280             entry.setVendor(doc.get(Fields.VENDOR));
    +281             entry.setProduct(doc.get(Fields.PRODUCT));
    +282             entry.setSearchScore(d.score);
    +283             if (!ret.contains(entry)) {
    +284                 ret.add(entry);
    +285             }
    +286         }
    +287         return ret;
    +288     }
    +289 
    +290     /**
    +291      * <p>Builds a Lucene search string by properly escaping data and
    +292      * constructing a valid search query.</p>
    +293      *
    +294      * <p>If either the possibleVendor or possibleProducts lists have been
    +295      * populated this data is used to add weighting factors to the search string
    +296      * generated.</p>
    +297      *
    +298      * @param vendor text to search the vendor field
    +299      * @param product text to search the product field
    +300      * @param vendorWeighting a list of strings to apply to the vendor to boost
    +301      * the terms weight
    +302      * @param productWeightings a list of strings to apply to the product to
    +303      * boost the terms weight
    +304      * @return the Lucene query
    +305      */
    +306     protected String buildSearch(String vendor, String product,
    +307             Set<String> vendorWeighting, Set<String> productWeightings) {
    +308         final String v = vendor; //.replaceAll("[^\\w\\d]", " ");
    +309         final String p = product; //.replaceAll("[^\\w\\d]", " ");
    +310         final StringBuilder sb = new StringBuilder(v.length() + p.length()
    +311                 + Fields.PRODUCT.length() + Fields.VENDOR.length() + STRING_BUILDER_BUFFER);
    +312 
    +313         if (!appendWeightedSearch(sb, Fields.PRODUCT, p, productWeightings)) {
    +314             return null;
    +315         }
    +316         sb.append(" AND ");
    +317         if (!appendWeightedSearch(sb, Fields.VENDOR, v, vendorWeighting)) {
    +318             return null;
    +319         }
    +320         return sb.toString();
    +321     }
    +322 
    +323     /**
    +324      * This method constructs a Lucene query for a given field. The searchText
    +325      * is split into separate words and if the word is within the list of
    +326      * weighted words then an additional weighting is applied to the term as it
    +327      * is appended into the query.
    +328      *
    +329      * @param sb a StringBuilder that the query text will be appended to.
    +330      * @param field the field within the Lucene index that the query is
    +331      * searching.
    +332      * @param searchText text used to construct the query.
    +333      * @param weightedText a list of terms that will be considered higher
    +334      * importance when searching.
    +335      * @return if the append was successful.
    +336      */
    +337     private boolean appendWeightedSearch(StringBuilder sb, String field, String searchText, Set<String> weightedText) {
    +338         sb.append(" ").append(field).append(":( ");
    +339 
    +340         final String cleanText = cleanseText(searchText);
    +341 
    +342         if ("".equals(cleanText)) {
    +343             return false;
    +344         }
    +345 
    +346         if (weightedText == null || weightedText.isEmpty()) {
    +347             LuceneUtils.appendEscapedLuceneQuery(sb, cleanText);
    +348         } else {
    +349             final StringTokenizer tokens = new StringTokenizer(cleanText);
    +350             while (tokens.hasMoreElements()) {
    +351                 final String word = tokens.nextToken();
    +352                 String temp = null;
    +353                 for (String weighted : weightedText) {
    +354                     final String weightedStr = cleanseText(weighted);
    +355                     if (equalsIgnoreCaseAndNonAlpha(word, weightedStr)) {
    +356                         temp = LuceneUtils.escapeLuceneQuery(word) + WEIGHTING_BOOST;
    +357                         if (!word.equalsIgnoreCase(weightedStr)) {
    +358                             temp += " " + LuceneUtils.escapeLuceneQuery(weightedStr) + WEIGHTING_BOOST;
    +359                         }
    +360                     }
    +361                 }
    +362                 if (temp == null) {
    +363                     temp = LuceneUtils.escapeLuceneQuery(word);
    +364                 }
    +365                 sb.append(" ").append(temp);
    +366             }
    +367         }
    +368         sb.append(" ) ");
    +369         return true;
    +370     }
    +371 
    +372     /**
    +373      * Removes characters from the input text that are not used within the CPE
    +374      * index.
    +375      *
    +376      * @param text is the text to remove the characters from.
    +377      * @return the text having removed some characters.
    +378      */
    +379     private String cleanseText(String text) {
    +380         return text.replaceAll(CLEANSE_CHARACTER_RX, " ");
    +381     }
    +382 
    +383     /**
    +384      * Compares two strings after lower casing them and removing the non-alpha
    +385      * characters.
    +386      *
    +387      * @param l string one to compare.
    +388      * @param r string two to compare.
    +389      * @return whether or not the two strings are similar.
    +390      */
    +391     private boolean equalsIgnoreCaseAndNonAlpha(String l, String r) {
    +392         if (l == null || r == null) {
    +393             return false;
    +394         }
    +395 
    +396         final String left = l.replaceAll(CLEANSE_NONALPHA_RX, "");
    +397         final String right = r.replaceAll(CLEANSE_NONALPHA_RX, "");
    +398         return left.equalsIgnoreCase(right);
    +399     }
    +400 
    +401     /**
    +402      * Ensures that the CPE Identified matches the dependency. This validates
    +403      * that the product, vendor, and version information for the CPE are
    +404      * contained within the dependencies evidence.
    +405      *
    +406      * @param entry a CPE entry.
    +407      * @param dependency the dependency that the CPE entries could be for.
    +408      * @return whether or not the entry is valid.
    +409      */
    +410     private boolean verifyEntry(final IndexEntry entry, final Dependency dependency) {
    +411         boolean isValid = false;
    +412 
    +413         if (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())
    +414                 && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {
    +415             //&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())
    +416             isValid = true;
    +417         }
    +418         return isValid;
    +419     }
    +420 
    +421     /**
    +422      * Used to determine if the EvidenceCollection contains a specific string.
    +423      *
    +424      * @param ec an EvidenceCollection
    +425      * @param text the text to search for
    +426      * @return whether or not the EvidenceCollection contains the string
    +427      */
    +428     private boolean collectionContainsString(EvidenceCollection ec, String text) {
    +429 
    +430         //<editor-fold defaultstate="collapsed" desc="This code fold contains an old version of the code, delete once more testing is done">
    +431         //        String[] splitText = text.split("[\\s_-]");
    +432         //
    +433         //        for (String search : splitText) {
    +434         //            //final String search = text.replaceAll("[\\s_-]", "").toLowerCase();
    +435         //            if (ec.containsUsedString(search)) {
    +436         //                return true;
    +437         //            }
    +438         //        }
    +439         //</editor-fold>
    +440 
    +441         //TODO - likely need to change the split... not sure if this will work for CPE with special chars
    +442         final String[] words = text.split("[\\s_-]");
    +443         final List<String> list = new ArrayList<String>();
    +444         String tempWord = null;
    +445         for (String word : words) {
    +446             //single letter words should be concatonated with the next word.
    +447             // so { "m", "core", "sample" } -> { "mcore", "sample" }
    +448             if (tempWord != null) {
    +449                 list.add(tempWord + word);
    +450                 tempWord = null;
    +451             } else if (word.length() <= 2) {
    +452                 tempWord = word;
    +453             } else {
    +454                 list.add(word);
    +455             }
    +456         }
    +457 //        if (tempWord != null) {
    +458 //            //for now ignore any last single letter words...
    +459 //        }
    +460         boolean contains = true;
    +461         for (String word : list) {
    +462             contains &= ec.containsUsedString(word);
    +463         }
    +464         return contains;
    +465     }
    +466 
    +467     /**
    +468      * Analyzes a dependency and attempts to determine if there are any CPE
    +469      * identifiers for this dependency.
    +470      *
    +471      * @param dependency The Dependency to analyze.
    +472      * @param engine The analysis engine
    +473      * @throws AnalysisException is thrown if there is an issue analyzing the
    +474      * dependency.
    +475      */
    +476     @Override
    +477     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +478         try {
    +479             determineCPE(dependency);
    +480         } catch (CorruptIndexException ex) {
    +481             throw new AnalysisException("CPE Index is corrupt.", ex);
    +482         } catch (IOException ex) {
    +483             throw new AnalysisException("Failure opening the CPE Index.", ex);
    +484         } catch (ParseException ex) {
    +485             throw new AnalysisException("Unable to parse the generated Lucene query for this dependency.", ex);
    +486         }
    +487     }
    +488 
    +489     /**
    +490      * Returns true because this analyzer supports all dependency types.
    +491      *
    +492      * @return true.
    +493      */
    +494     @Override
    +495     public Set<String> getSupportedExtensions() {
    +496         return null;
    +497     }
    +498 
    +499     /**
    +500      * Returns the name of this analyzer.
    +501      *
    +502      * @return the name of this analyzer.
    +503      */
    +504     @Override
    +505     public String getName() {
    +506         return "CPE Analyzer";
    +507     }
    +508 
    +509     /**
    +510      * Returns true because this analyzer supports all dependency types.
    +511      *
    +512      * @param extension the file extension of the dependency being analyzed.
    +513      * @return true.
    +514      */
    +515     @Override
    +516     public boolean supportsExtension(String extension) {
    +517         return true;
    +518     }
    +519 
    +520     /**
    +521      * Returns the analysis phase that this analyzer should run in.
    +522      *
    +523      * @return the analysis phase that this analyzer should run in.
    +524      */
    +525     @Override
    +526     public AnalysisPhase getAnalysisPhase() {
    +527         return AnalysisPhase.IDENTIFIER_ANALYSIS;
    +528     }
    +529 
    +530     /**
    +531      * Opens the CPE Lucene Index.
    +532      *
    +533      * @throws Exception is thrown if there is an issue opening the index.
    +534      */
    +535     @Override
    +536     public void initialize() throws Exception {
    +537         this.open();
    +538     }
    +539 
    +540     /**
    +541      * Retrieves a list of CPE values from the CveDB based on the vendor and
    +542      * product passed in. The list is then validated to find only CPEs that are
    +543      * valid for the given dependency. It is possible that the CPE identified is
    +544      * a best effort "guess" based on the vendor, product, and version
    +545      * information.
    +546      *
    +547      * @param dependency the Dependency being analyzed
    +548      * @param vendor the vendor for the CPE being analyzed
    +549      * @param product the product for the CPE being analyzed
    +550      * @throws UnsupportedEncodingException is thrown if UTF-8 is not supported
    +551      */
    +552     private void determineIdentifiers(Dependency dependency, String vendor, String product) throws UnsupportedEncodingException {
    +553         final Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);
    +554         DependencyVersion bestGuess = new DependencyVersion("-");
    +555         Confidence bestGuessConf = null;
    +556         final List<IdentifierMatch> collected = new ArrayList<IdentifierMatch>();
    +557         for (Confidence conf : Confidence.values()) {
    +558             for (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {
    +559                 final DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());
    +560                 if (evVer == null) {
    +561                     continue;
    +562                 }
    +563                 for (VulnerableSoftware vs : cpes) {
    +564                     DependencyVersion dbVer;
    +565                     if (vs.getRevision() != null && !vs.getRevision().isEmpty()) {
    +566                         dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + "." + vs.getRevision());
    +567                     } else {
    +568                         dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());
    +569                     }
    +570                     if (dbVer == null //special case, no version specified - everything is vulnerable
    +571                             || evVer.equals(dbVer)) { //woot exect match
    +572                         final String url = String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(vs.getName(), "UTF-8"));
    +573                         final IdentifierMatch match = new IdentifierMatch("cpe", vs.getName(), url, IdentifierConfidence.EXACT_MATCH, conf);
    +574                         collected.add(match);
    +575                     } else {
    +576                         //TODO the following isn't quite right is it? need to think about this guessing game a bit more.
    +577                         if (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()
    +578                                 && evVer.matchesAtLeastThreeLevels(dbVer)) {
    +579                             if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
    +580                                 if (bestGuess.getVersionParts().size() < dbVer.getVersionParts().size()) {
    +581                                     bestGuess = dbVer;
    +582                                     bestGuessConf = conf;
    +583                                 }
    +584                             }
    +585                         }
    +586                     }
    +587                 }
    +588                 if (bestGuessConf == null || bestGuessConf.compareTo(conf) > 0) {
    +589                     if (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {
    +590                         bestGuess = evVer;
    +591                         bestGuessConf = conf;
    +592                     }
    +593                 }
    +594             }
    +595         }
    +596         final String cpeName = String.format("cpe:/a:%s:%s:%s", vendor, product, bestGuess.toString());
    +597         final String url = null; //String.format("http://web.nvd.nist.gov/view/vuln/search?cpe=%s", URLEncoder.encode(cpeName, "UTF-8"));
    +598         if (bestGuessConf == null) {
    +599             bestGuessConf = Confidence.LOW;
    +600         }
    +601         final IdentifierMatch match = new IdentifierMatch("cpe", cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);
    +602         collected.add(match);
    +603 
    +604         Collections.sort(collected);
    +605         final IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();
    +606         final Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();
    +607         for (IdentifierMatch m : collected) {
    +608             if (bestIdentifierQuality.equals(m.getConfidence())
    +609                     && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {
    +610                 dependency.addIdentifier(m.getIdentifier());
    +611             }
    +612         }
    +613     }
    +614 
    +615     /**
    +616      * The confidence whether the identifier is an exact match, or a best guess.
    +617      */
    +618     private enum IdentifierConfidence {
    +619 
    +620         /**
    +621          * An exact match for the CPE.
    +622          */
    +623         EXACT_MATCH,
    +624         /**
    +625          * A best guess for the CPE.
    +626          */
    +627         BEST_GUESS
    +628     }
    +629 
    +630     /**
    +631      * A simple object to hold an identifier and carry information about the
    +632      * confidence in the identifier.
    +633      */
    +634     private static class IdentifierMatch implements Comparable<IdentifierMatch> {
    +635 
    +636         /**
    +637          * Constructs an IdentiferMatch.
    +638          *
    +639          * @param type the type of identifier (such as CPE)
    +640          * @param value the value of the identifier
    +641          * @param url the URL of the identifier
    +642          * @param identifierConfidence the confidence in the identifier: best
    +643          * guess or exact match
    +644          * @param evidenceConfidence the confidence of the evidence used to find
    +645          * the identifier
    +646          */
    +647         IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {
    +648             this.identifier = new Identifier(type, value, url);
    +649             this.confidence = identifierConfidence;
    +650             this.evidenceConfidence = evidenceConfidence;
    +651         }
    +652         //<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier">
    +653         /**
    +654          * The confidence in the evidence used to identify this match.
    +655          */
    +656         private Confidence evidenceConfidence;
    +657 
    +658         /**
    +659          * Get the value of evidenceConfidence
    +660          *
    +661          * @return the value of evidenceConfidence
    +662          */
    +663         public Confidence getEvidenceConfidence() {
    +664             return evidenceConfidence;
    +665         }
    +666 
    +667         /**
    +668          * Set the value of evidenceConfidence
    +669          *
    +670          * @param evidenceConfidence new value of evidenceConfidence
    +671          */
    +672         public void setEvidenceConfidence(Confidence evidenceConfidence) {
    +673             this.evidenceConfidence = evidenceConfidence;
    +674         }
    +675         /**
    +676          * The confidence whether this is an exact match, or a best guess.
    +677          */
    +678         private IdentifierConfidence confidence;
    +679 
    +680         /**
    +681          * Get the value of confidence.
    +682          *
    +683          * @return the value of confidence
    +684          */
    +685         public IdentifierConfidence getConfidence() {
    +686             return confidence;
    +687         }
    +688 
    +689         /**
    +690          * Set the value of confidence.
    +691          *
    +692          * @param confidence new value of confidence
    +693          */
    +694         public void setConfidence(IdentifierConfidence confidence) {
    +695             this.confidence = confidence;
    +696         }
    +697         /**
    +698          * The CPE identifier.
    +699          */
    +700         private Identifier identifier;
    +701 
    +702         /**
    +703          * Get the value of identifier.
    +704          *
    +705          * @return the value of identifier
    +706          */
    +707         public Identifier getIdentifier() {
    +708             return identifier;
    +709         }
    +710 
    +711         /**
    +712          * Set the value of identifier.
    +713          *
    +714          * @param identifier new value of identifier
    +715          */
    +716         public void setIdentifier(Identifier identifier) {
    +717             this.identifier = identifier;
    +718         }
    +719         //</editor-fold>
    +720         //<editor-fold defaultstate="collapsed" desc="Standard implementations of toString, hashCode, and equals">
    +721 
    +722         /**
    +723          * Standard toString() implementation.
    +724          *
    +725          * @return the string representation of the object
    +726          */
    +727         @Override
    +728         public String toString() {
    +729             return "IdentifierMatch{" + "evidenceConfidence=" + evidenceConfidence
    +730                     + ", confidence=" + confidence + ", identifier=" + identifier + '}';
    +731         }
    +732 
    +733         /**
    +734          * Standard hashCode() implementation.
    +735          *
    +736          * @return the hashCode
    +737          */
    +738         @Override
    +739         public int hashCode() {
    +740             int hash = 5;
    +741             hash = 97 * hash + (this.evidenceConfidence != null ? this.evidenceConfidence.hashCode() : 0);
    +742             hash = 97 * hash + (this.confidence != null ? this.confidence.hashCode() : 0);
    +743             hash = 97 * hash + (this.identifier != null ? this.identifier.hashCode() : 0);
    +744             return hash;
    +745         }
    +746 
    +747         /**
    +748          * Standard equals implementation.
    +749          *
    +750          * @param obj the object to compare
    +751          * @return true if the objects are equal, otherwise false
    +752          */
    +753         @Override
    +754         public boolean equals(Object obj) {
    +755             if (obj == null) {
    +756                 return false;
    +757             }
    +758             if (getClass() != obj.getClass()) {
    +759                 return false;
    +760             }
    +761             final IdentifierMatch other = (IdentifierMatch) obj;
    +762             if (this.evidenceConfidence != other.evidenceConfidence) {
    +763                 return false;
    +764             }
    +765             if (this.confidence != other.confidence) {
    +766                 return false;
    +767             }
    +768             if (this.identifier != other.identifier && (this.identifier == null || !this.identifier.equals(other.identifier))) {
    +769                 return false;
    +770             }
    +771             return true;
    +772         }
    +773         //</editor-fold>
    +774 
    +775         /**
    +776          * Standard implementation of compareTo that compares identifier
    +777          * confidence, evidence confidence, and then the identifier.
    +778          *
    +779          * @param o the IdentifierMatch to compare to
    +780          * @return the natural ordering of IdentifierMatch
    +781          */
    +782         @Override
    +783         public int compareTo(IdentifierMatch o) {
    +784             int conf = this.confidence.compareTo(o.confidence);
    +785             if (conf == 0) {
    +786                 conf = this.evidenceConfidence.compareTo(o.evidenceConfidence);
    +787                 if (conf == 0) {
    +788                     conf = identifier.compareTo(o.identifier);
    +789                 }
    +790             }
    +791             return conf;
    +792         }
    +793     }
    +794 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Fields.html new file mode 100644 index 000000000..41979727c --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Index.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Index.html new file mode 100644 index 000000000..96ba2429f --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/Index.html @@ -0,0 +1,184 @@ + + + + +Index 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.File;
    +22  import java.io.IOException;
    +23  import java.util.HashMap;
    +24  import java.util.Map;
    +25  import org.apache.lucene.analysis.Analyzer;
    +26  import org.apache.lucene.analysis.core.KeywordAnalyzer;
    +27  import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
    +28  import org.apache.lucene.document.Document;
    +29  import org.apache.lucene.document.Field;
    +30  import org.apache.lucene.document.TextField;
    +31  import org.apache.lucene.index.CorruptIndexException;
    +32  import org.apache.lucene.index.Term;
    +33  import org.apache.lucene.queryparser.classic.QueryParser;
    +34  import org.apache.lucene.store.Directory;
    +35  import org.apache.lucene.store.FSDirectory;
    +36  import org.apache.lucene.util.Version;
    +37  import org.owasp.dependencycheck.data.lucene.AbstractIndex;
    +38  import org.owasp.dependencycheck.utils.Settings;
    +39  import org.owasp.dependencycheck.data.lucene.FieldAnalyzer;
    +40  import org.owasp.dependencycheck.data.lucene.SearchFieldAnalyzer;
    +41  
    +42  /**
    +43   * The Index class is used to utilize and maintain the CPE Index.
    +44   *
    +45   * @author Jeremy Long (jeremy.long@owasp.org)
    +46   */
    +47  public class Index extends AbstractIndex {
    +48  
    +49      /**
    +50       * Returns the directory that holds the CPE Index.
    +51       *
    +52       * @return the Directory containing the CPE Index.
    +53       * @throws IOException is thrown if an IOException occurs.
    +54       */
    +55      @Override
    +56      public Directory getDirectory() throws IOException {
    +57          final File path = getDataDirectory();
    +58          return FSDirectory.open(path);
    +59      }
    +60  
    +61      /**
    +62       * Retrieves the directory that the JAR file exists in so that we can ensure
    +63       * we always use a common data directory.
    +64       *
    +65       * @return the data directory for this index.
    +66       * @throws IOException is thrown if an IOException occurs of course...
    +67       */
    +68      public File getDataDirectory() throws IOException {
    +69          final File path = Settings.getFile(Settings.KEYS.CPE_DATA_DIRECTORY);
    +70          if (!path.exists()) {
    +71              if (!path.mkdirs()) {
    +72                  throw new IOException("Unable to create CPE Data directory");
    +73              }
    +74          }
    +75          return path;
    +76      }
    +77  
    +78      /**
    +79       * Creates an Analyzer for the CPE Index.
    +80       *
    +81       * @return the CPE Analyzer.
    +82       */
    +83      @SuppressWarnings("unchecked")
    +84      @Override
    +85      public Analyzer createIndexingAnalyzer() {
    +86          final Map fieldAnalyzers = new HashMap();
    +87          fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +88          return new PerFieldAnalyzerWrapper(new FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);
    +89      }
    +90      /**
    +91       * The search field analyzer for the product field.
    +92       */
    +93      private SearchFieldAnalyzer productSearchFieldAnalyzer;
    +94      /**
    +95       * The search field analyzer for the vendor field.
    +96       */
    +97      private SearchFieldAnalyzer vendorSearchFieldAnalyzer;
    +98  
    +99      /**
    +100      * Creates an Analyzer for searching the CPE Index.
    +101      *
    +102      * @return the CPE Analyzer.
    +103      */
    +104     @SuppressWarnings("unchecked")
    +105     @Override
    +106     public Analyzer createSearchingAnalyzer() {
    +107         final Map fieldAnalyzers = new HashMap();
    +108 
    +109         fieldAnalyzers.put(Fields.DOCUMENT_KEY, new KeywordAnalyzer());
    +110         productSearchFieldAnalyzer = new SearchFieldAnalyzer(Version.LUCENE_43);
    +111         vendorSearchFieldAnalyzer = new SearchFieldAnalyzer(Version.LUCENE_43);
    +112         fieldAnalyzers.put(Fields.PRODUCT, productSearchFieldAnalyzer);
    +113         fieldAnalyzers.put(Fields.VENDOR, vendorSearchFieldAnalyzer);
    +114 
    +115         return new PerFieldAnalyzerWrapper(new FieldAnalyzer(Version.LUCENE_43), fieldAnalyzers);
    +116     }
    +117 
    +118     /**
    +119      * Creates the Lucene QueryParser used when querying the index.
    +120      *
    +121      * @return a QueryParser.
    +122      */
    +123     @Override
    +124     public QueryParser createQueryParser() {
    +125         return new QueryParser(Version.LUCENE_43, Fields.DOCUMENT_KEY, getSearchingAnalyzer());
    +126     }
    +127 
    +128     /**
    +129      * Resets the searching analyzers
    +130      */
    +131     @Override
    +132     protected void resetSearchingAnalyzer() {
    +133         if (productSearchFieldAnalyzer != null) {
    +134             productSearchFieldAnalyzer.clear();
    +135         }
    +136         if (vendorSearchFieldAnalyzer != null) {
    +137             vendorSearchFieldAnalyzer.clear();
    +138         }
    +139     }
    +140 
    +141     /**
    +142      * Saves a CPE IndexEntry into the Lucene index.
    +143      *
    +144      * @param entry a CPE entry.
    +145      * @throws CorruptIndexException is thrown if the index is corrupt.
    +146      * @throws IOException is thrown if an IOException occurs.
    +147      */
    +148     public void saveEntry(IndexEntry entry) throws CorruptIndexException, IOException {
    +149         final Document doc = convertEntryToDoc(entry);
    +150         final Term term = new Term(Fields.DOCUMENT_KEY, entry.getDocumentId());
    +151         getIndexWriter().updateDocument(term, doc);
    +152     }
    +153 
    +154     /**
    +155      * Converts a CPE entry into a Lucene Document.
    +156      *
    +157      * @param entry a CPE IndexEntry.
    +158      * @return a Lucene Document containing a CPE IndexEntry.
    +159      */
    +160     protected Document convertEntryToDoc(IndexEntry entry) {
    +161         final Document doc = new Document();
    +162 
    +163         final Field vendor = new TextField(Fields.VENDOR, entry.getVendor(), Field.Store.YES);
    +164         doc.add(vendor);
    +165 
    +166         final Field product = new TextField(Fields.PRODUCT, entry.getProduct(), Field.Store.YES);
    +167         doc.add(product);
    +168         return doc;
    +169     }
    +170 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/IndexEntry.html new file mode 100644 index 000000000..4a0a8fd56 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html new file mode 100644 index 000000000..4c3731d06 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-frame.html @@ -0,0 +1,39 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cpe + + + + +

    + org.owasp.dependencycheck.data.cpe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html new file mode 100644 index 000000000..7f07b545b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cpe/package-summary.html @@ -0,0 +1,92 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cpe + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.cpe

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + CPEAnalyzer +
    + Fields +
    + IdentifierConfidence +
    + IdentifierMatch +
    + Index +
    + IndexEntry +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweDB.html new file mode 100644 index 000000000..36b8612ba --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/CweHandler.html new file mode 100644 index 000000000..828cae139 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html new file mode 100644 index 000000000..45e1206ef --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.cwe + + + + +

    + org.owasp.dependencycheck.data.cwe +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html new file mode 100644 index 000000000..fa1121244 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/cwe/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractIndex.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractIndex.html new file mode 100644 index 000000000..9fb36d334 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractIndex.html @@ -0,0 +1,355 @@ + + + + +AbstractIndex 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.logging.Level;
    +23  import java.util.logging.Logger;
    +24  import org.apache.lucene.analysis.Analyzer;
    +25  import org.apache.lucene.document.Document;
    +26  import org.apache.lucene.index.CorruptIndexException;
    +27  import org.apache.lucene.index.DirectoryReader;
    +28  import org.apache.lucene.index.IndexReader;
    +29  import org.apache.lucene.index.IndexWriter;
    +30  import org.apache.lucene.index.IndexWriterConfig;
    +31  import org.apache.lucene.queryparser.classic.ParseException;
    +32  import org.apache.lucene.queryparser.classic.QueryParser;
    +33  import org.apache.lucene.search.IndexSearcher;
    +34  import org.apache.lucene.search.Query;
    +35  import org.apache.lucene.search.TopDocs;
    +36  import org.apache.lucene.store.Directory;
    +37  import org.apache.lucene.store.LockObtainFailedException;
    +38  import org.apache.lucene.util.Version;
    +39  
    +40  /**
    +41   * The base Index for other index objects. Implements the open and close
    +42   * methods.
    +43   *
    +44   * @author Jeremy Long (jeremy.long@owasp.org)
    +45   */
    +46  public abstract class AbstractIndex {
    +47  
    +48      /**
    +49       * The Lucene directory containing the index.
    +50       */
    +51      private Directory directory;
    +52      /**
    +53       * The IndexWriter for the Lucene index.
    +54       */
    +55      private IndexWriter indexWriter;
    +56      /**
    +57       * The Lucene IndexReader.
    +58       */
    +59      private IndexReader indexReader;
    +60      /**
    +61       * The Lucene IndexSearcher.
    +62       */
    +63      private IndexSearcher indexSearcher;
    +64      /**
    +65       * The Lucene Analyzer used for Indexing.
    +66       */
    +67      private Analyzer indexingAnalyzer;
    +68      /**
    +69       * The Lucene Analyzer used for Searching.
    +70       */
    +71      private Analyzer searchingAnalyzer;
    +72      /**
    +73       * The Lucene QueryParser used for Searching.
    +74       */
    +75      private QueryParser queryParser;
    +76      /**
    +77       * Indicates whether or not the Lucene Index is open.
    +78       */
    +79      private boolean indexOpen = false;
    +80  
    +81      /**
    +82       * Opens the CPE Index.
    +83       *
    +84       * @throws IOException is thrown if an IOException occurs opening the index.
    +85       */
    +86      public void open() throws IOException {
    +87          directory = this.getDirectory();
    +88          indexingAnalyzer = this.getIndexingAnalyzer();
    +89          searchingAnalyzer = this.getSearchingAnalyzer();
    +90          indexOpen = true;
    +91      }
    +92  
    +93      /**
    +94       * Commits any pending changes.
    +95       */
    +96      public void commit() {
    +97          if (indexWriter != null) {
    +98              try {
    +99                  indexWriter.commit();
    +100             } catch (CorruptIndexException ex) {
    +101                 final String msg = "Unable to update database, there is a corrupt index.";
    +102                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +103                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +104             } catch (IOException ex) {
    +105                 final String msg = "Unable to update database due to an IO error.";
    +106                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +107                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +108             }
    +109         }
    +110     }
    +111 
    +112     /**
    +113      * Closes the CPE Index.
    +114      */
    +115     public void close() {
    +116         if (indexWriter != null) {
    +117             commit();
    +118             try {
    +119                 indexWriter.close(true);
    +120             } catch (CorruptIndexException ex) {
    +121                 final String msg = "Unable to update database, there is a corrupt index.";
    +122                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +123                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +124             } catch (IOException ex) {
    +125                 final String msg = "Unable to update database due to an IO error.";
    +126                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +127                 Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +128             } finally {
    +129                 indexWriter = null;
    +130             }
    +131         }
    +132         if (indexSearcher != null) {
    +133             indexSearcher = null;
    +134         }
    +135 
    +136         if (indexingAnalyzer != null) {
    +137             indexingAnalyzer.close();
    +138             indexingAnalyzer = null;
    +139         }
    +140 
    +141         if (searchingAnalyzer != null) {
    +142             searchingAnalyzer.close();
    +143             searchingAnalyzer = null;
    +144         }
    +145 
    +146         try {
    +147             directory.close();
    +148         } catch (IOException ex) {
    +149             final String msg = "Unable to update database due to an IO error.";
    +150             Logger.getLogger(AbstractIndex.class.getName()).log(Level.SEVERE, msg);
    +151             Logger.getLogger(AbstractIndex.class.getName()).log(Level.FINE, null, ex);
    +152         } finally {
    +153             directory = null;
    +154         }
    +155         indexOpen = false;
    +156     }
    +157 
    +158     /**
    +159      * Returns the status of the data source - is the index open.
    +160      *
    +161      * @return true or false.
    +162      */
    +163     public boolean isOpen() {
    +164         return indexOpen;
    +165     }
    +166 
    +167     /**
    +168      * Opens the Lucene Index Writer.
    +169      *
    +170      * @throws CorruptIndexException is thrown if the Lucene index is corrupt.
    +171      * @throws IOException is thrown if an IOException occurs opening the index.
    +172      */
    +173     public void openIndexWriter() throws CorruptIndexException, IOException {
    +174         if (!isOpen()) {
    +175             open();
    +176         }
    +177         final IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_43, indexingAnalyzer);
    +178         indexWriter = new IndexWriter(directory, conf);
    +179     }
    +180 
    +181     /**
    +182      * Retrieves the IndexWriter for the Lucene Index.
    +183      *
    +184      * @return an IndexWriter.
    +185      * @throws CorruptIndexException is thrown if the Lucene Index is corrupt.
    +186      * @throws LockObtainFailedException is thrown if there is an exception
    +187      * obtaining a lock on the Lucene index.
    +188      * @throws IOException is thrown if an IOException occurs opening the index.
    +189      */
    +190     public IndexWriter getIndexWriter() throws CorruptIndexException, LockObtainFailedException, IOException {
    +191         if (indexWriter == null) {
    +192             openIndexWriter();
    +193         }
    +194         return indexWriter;
    +195     }
    +196 
    +197     /**
    +198      * Opens the Lucene Index for reading.
    +199      *
    +200      * @throws CorruptIndexException is thrown if the index is corrupt.
    +201      * @throws IOException is thrown if there is an exception reading the index.
    +202      */
    +203     public void openIndexReader() throws CorruptIndexException, IOException {
    +204         if (!isOpen()) {
    +205             open();
    +206         }
    +207         //indexReader = IndexReader.open(directory, true);
    +208         indexReader = DirectoryReader.open(directory);
    +209     }
    +210 
    +211     /**
    +212      * Returns an IndexSearcher for the Lucene Index.
    +213      *
    +214      * @return an IndexSearcher.
    +215      * @throws CorruptIndexException is thrown if the index is corrupt.
    +216      * @throws IOException is thrown if there is an exception reading the index.
    +217      */
    +218     protected IndexSearcher getIndexSearcher() throws CorruptIndexException, IOException {
    +219         if (indexReader == null) {
    +220             openIndexReader();
    +221         }
    +222         if (indexSearcher == null) {
    +223             indexSearcher = new IndexSearcher(indexReader);
    +224         }
    +225         return indexSearcher;
    +226     }
    +227 
    +228     /**
    +229      * Returns an Analyzer to be used when indexing.
    +230      *
    +231      * @return an Analyzer.
    +232      */
    +233     public Analyzer getIndexingAnalyzer() {
    +234         if (indexingAnalyzer == null) {
    +235             indexingAnalyzer = createIndexingAnalyzer();
    +236         }
    +237         return indexingAnalyzer;
    +238     }
    +239 
    +240     /**
    +241      * Returns an analyzer used for searching the index
    +242      *
    +243      * @return a lucene analyzer
    +244      */
    +245     protected Analyzer getSearchingAnalyzer() {
    +246         if (searchingAnalyzer == null) {
    +247             searchingAnalyzer = createSearchingAnalyzer();
    +248         }
    +249         return searchingAnalyzer;
    +250     }
    +251 
    +252     /**
    +253      * Gets a query parser
    +254      *
    +255      * @return a query parser
    +256      */
    +257     protected QueryParser getQueryParser() {
    +258         if (queryParser == null) {
    +259             queryParser = createQueryParser();
    +260         }
    +261         return queryParser;
    +262     }
    +263 
    +264     /**
    +265      * Searches the index using the given search string.
    +266      *
    +267      * @param searchString the query text
    +268      * @param maxQueryResults the maximum number of documents to return
    +269      * @return the TopDocs found by the search
    +270      * @throws ParseException thrown when the searchString is invalid
    +271      * @throws IOException is thrown if there is an issue with the underlying
    +272      * Index
    +273      */
    +274     public TopDocs search(String searchString, int maxQueryResults) throws ParseException, IOException {
    +275         final QueryParser parser = getQueryParser();
    +276         final Query query = parser.parse(searchString);
    +277         resetSearchingAnalyzer();
    +278         final IndexSearcher is = getIndexSearcher();
    +279         return is.search(query, maxQueryResults);
    +280     }
    +281 
    +282     /**
    +283      * Searches the index using the given query.
    +284      *
    +285      * @param query the query used to search the index
    +286      * @param maxQueryResults the max number of results to return
    +287      * @return the TopDocs found be the query
    +288      * @throws CorruptIndexException thrown if the Index is corrupt
    +289      * @throws IOException thrown if there is an IOException
    +290      */
    +291     public TopDocs search(Query query, int maxQueryResults) throws CorruptIndexException, IOException {
    +292         final IndexSearcher is = getIndexSearcher();
    +293         return is.search(query, maxQueryResults);
    +294     }
    +295 
    +296     /**
    +297      * Retrieves a document from the Index.
    +298      *
    +299      * @param documentId the id of the document to retrieve
    +300      * @return the Document
    +301      * @throws IOException thrown if there is an IOException
    +302      */
    +303     public Document getDocument(int documentId) throws IOException {
    +304         final IndexSearcher is = getIndexSearcher();
    +305         return is.doc(documentId);
    +306     }
    +307 
    +308     /**
    +309      * Gets the directory that contains the Lucene Index.
    +310      *
    +311      * @return a Lucene Directory
    +312      * @throws IOException is thrown when an IOException occurs
    +313      */
    +314     public abstract Directory getDirectory() throws IOException;
    +315 
    +316     /**
    +317      * Creates the Lucene Analyzer used when indexing.
    +318      *
    +319      * @return a Lucene Analyzer
    +320      */
    +321     public abstract Analyzer createIndexingAnalyzer();
    +322 
    +323     /**
    +324      * Creates the Lucene Analyzer used when querying the index.
    +325      *
    +326      * @return a Lucene Analyzer
    +327      */
    +328     public abstract Analyzer createSearchingAnalyzer();
    +329 
    +330     /**
    +331      * Creates the Lucene QueryParser used when querying the index.
    +332      *
    +333      * @return a QueryParser
    +334      */
    +335     public abstract QueryParser createQueryParser();
    +336 
    +337     /**
    +338      * Resets the searching analyzers
    +339      */
    +340     protected abstract void resetSearchingAnalyzer();
    +341 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AbstractTokenizingFilter.html new file mode 100644 index 000000000..472d3ec77 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/AlphaNumericTokenizer.html new file mode 100644 index 000000000..5603b1892 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/DependencySimilarity.html new file mode 100644 index 000000000..85f5d5495 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/FieldAnalyzer.html new file mode 100644 index 000000000..38f4d3690 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html new file mode 100644 index 000000000..750471260 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/LuceneUtils.html @@ -0,0 +1,117 @@ + + + + +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  /**
    +22   * <p>Lucene utils is a set of utilize written to make constructing Lucene
    +23   * queries simpler.</p>
    +24   *
    +25   * @author Jeremy Long (jeremy.long@owasp.org)
    +26   */
    +27  public final class LuceneUtils {
    +28  
    +29      /**
    +30       * Private constructor as this is a utility class.
    +31       */
    +32      private LuceneUtils() {
    +33      }
    +34  
    +35      /**
    +36       * Appends the text to the supplied StringBuilder escaping Lucene control
    +37       * characters in the process.
    +38       *
    +39       * @param buf a StringBuilder to append the escaped text to
    +40       * @param text the data to be escaped
    +41       */
    +42      @SuppressWarnings("fallthrough")
    +43      @edu.umd.cs.findbugs.annotations.SuppressWarnings(
    +44              value = "SF_SWITCH_NO_DEFAULT",
    +45              justification = "The switch below does have a default.")
    +46      public static void appendEscapedLuceneQuery(StringBuilder buf,
    +47              final CharSequence text) {
    +48  
    +49          if (text == null || buf == null) {
    +50              return;
    +51          }
    +52  
    +53          for (int i = 0; i < text.length(); i++) {
    +54              final char c = text.charAt(i);
    +55              switch (c) {
    +56                  case '+':
    +57                  case '-':
    +58                  case '&':
    +59                  case '|':
    +60                  case '!':
    +61                  case '(':
    +62                  case ')':
    +63                  case '{':
    +64                  case '}':
    +65                  case '[':
    +66                  case ']':
    +67                  case '^':
    +68                  case '"':
    +69                  case '~':
    +70                  case '*':
    +71                  case '?':
    +72                  case ':':
    +73                  case '\\': //it is supposed to fall through here
    +74                      buf.append('\\');
    +75                  default:
    +76                      buf.append(c);
    +77                      break;
    +78              }
    +79          }
    +80      }
    +81  
    +82      /**
    +83       * Escapes the text passed in so that it is treated as data instead of
    +84       * control characters.
    +85       *
    +86       * @param text data to be escaped
    +87       * @return the escaped text.
    +88       */
    +89      public static String escapeLuceneQuery(final CharSequence text) {
    +90  
    +91          if (text == null) {
    +92              return null;
    +93          }
    +94  
    +95          int size = text.length();
    +96          size = size >> 1;
    +97          final StringBuilder buf = new StringBuilder(size);
    +98  
    +99          appendEscapedLuceneQuery(buf, text);
    +100 
    +101         return buf.toString();
    +102     }
    +103 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchFieldAnalyzer.html new file mode 100644 index 000000000..2afcccd25 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/SearchVersionAnalyzer.html new file mode 100644 index 000000000..661e5dd3a --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html new file mode 100644 index 000000000..b0c1a3b45 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/TokenPairConcatenatingFilter.html @@ -0,0 +1,121 @@ + + + + +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       * Constructs a new TokenPairConcatenatingFilter.
    +52       *
    +53       * @param stream the TokenStream that this filter will process
    +54       */
    +55      public TokenPairConcatenatingFilter(TokenStream stream) {
    +56          super(stream);
    +57          words = new LinkedList<String>();
    +58      }
    +59  
    +60      /**
    +61       * Increments the underlying TokenStream and sets CharTermAttributes to
    +62       * construct an expanded set of tokens by concatenating tokens with the
    +63       * previous token.
    +64       *
    +65       * @return whether or not we have hit the end of the TokenStream
    +66       * @throws IOException is thrown when an IOException occurs
    +67       */
    +68      @Override
    +69      public boolean incrementToken() throws IOException {
    +70  
    +71          //collect all the terms into the words collection
    +72          while (input.incrementToken()) {
    +73              final String word = new String(termAtt.buffer(), 0, termAtt.length());
    +74              words.add(word);
    +75          }
    +76  
    +77          //if we have a previousTerm - write it out as its own token concatenated
    +78          // with the current word (if one is available).
    +79          if (previousWord != null && words.size() > 0) {
    +80              final String word = words.getFirst();
    +81              clearAttributes();
    +82              termAtt.append(previousWord).append(word);
    +83              previousWord = null;
    +84              return true;
    +85          }
    +86          //if we have words, write it out as a single token
    +87          if (words.size() > 0) {
    +88              final String word = words.removeFirst();
    +89              clearAttributes();
    +90              termAtt.append(word);
    +91              previousWord = word;
    +92              return true;
    +93          }
    +94          return false;
    +95      }
    +96  
    +97      /**
    +98       * <p>Resets the Filter and clears any internal state data that may have
    +99       * been left-over from previous uses of the Filter.</p>
    +100      * <p><b>If this Filter is re-used this method must be called between
    +101      * uses.</b></p>
    +102      */
    +103     public void clear() {
    +104         previousWord = null;
    +105         words.clear();
    +106     }
    +107 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/UrlTokenizingFilter.html new file mode 100644 index 000000000..e29f6febc --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionAnalyzer.html new file mode 100644 index 000000000..29268df85 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/VersionTokenizingFilter.html new file mode 100644 index 000000000..fd0bbc08f --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html new file mode 100644 index 000000000..b5917b4fc --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-frame.html @@ -0,0 +1,57 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.lucene + + + + +

    + org.owasp.dependencycheck.data.lucene +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html new file mode 100644 index 000000000..99073fc7b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/lucene/package-summary.html @@ -0,0 +1,122 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.lucene + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.lucene

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + AbstractIndex +
    + 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/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CorruptDatabaseException.html new file mode 100644 index 000000000..50cfc05eb --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html new file mode 100644 index 000000000..42907442d --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/CveDB.html @@ -0,0 +1,745 @@ + + + + +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.BufferedReader;
    +22  import java.io.File;
    +23  import java.io.IOException;
    +24  import java.io.InputStream;
    +25  import java.io.InputStreamReader;
    +26  import java.io.UnsupportedEncodingException;
    +27  import java.sql.Connection;
    +28  import java.sql.DriverManager;
    +29  import java.sql.PreparedStatement;
    +30  import java.sql.ResultSet;
    +31  import java.sql.SQLException;
    +32  import java.sql.Statement;
    +33  import java.util.ArrayList;
    +34  import java.util.HashSet;
    +35  import java.util.List;
    +36  import java.util.Set;
    +37  import java.util.logging.Level;
    +38  import java.util.logging.Logger;
    +39  import org.owasp.dependencycheck.data.cwe.CweDB;
    +40  import org.owasp.dependencycheck.dependency.Reference;
    +41  import org.owasp.dependencycheck.dependency.Vulnerability;
    +42  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +43  import org.owasp.dependencycheck.utils.DependencyVersion;
    +44  import org.owasp.dependencycheck.utils.DependencyVersionUtil;
    +45  import org.owasp.dependencycheck.utils.Settings;
    +46  
    +47  /**
    +48   * The database holding information about the NVD CVE data.
    +49   *
    +50   * @author Jeremy Long (jeremy.long@owasp.org)
    +51   */
    +52  public class CveDB {
    +53  
    +54      /**
    +55       * Resource location for SQL file used to create the database schema.
    +56       */
    +57      public static final String DB_STRUCTURE_RESOURCE = "data/initialize.sql";
    +58      /**
    +59       * The version of the current DB Schema.
    +60       */
    +61      public static final String DB_SCHEMA_VERSION = "2.5";
    +62      /**
    +63       * Database connection
    +64       */
    +65      private Connection conn;
    +66      //<editor-fold defaultstate="collapsed" desc="Constants to create, maintain, and retrieve data from the CVE Database">
    +67      /**
    +68       * SQL Statement to delete references by vulnerability ID.
    +69       */
    +70      public static final String DELETE_REFERENCE = "DELETE FROM reference WHERE cveid = ?";
    +71      /**
    +72       * SQL Statement to delete software by vulnerability ID.
    +73       */
    +74      public static final String DELETE_SOFTWARE = "DELETE FROM software WHERE cveid = ?";
    +75      /**
    +76       * SQL Statement to delete a vulnerability by CVE.
    +77       */
    +78      public static final String DELETE_VULNERABILITY = "DELETE FROM vulnerability WHERE cve = ?";
    +79      /**
    +80       * SQL Statement to cleanup orphan entries. Yes, the db schema could be a
    +81       * little tighter, but what we have works well to keep the data file size
    +82       * down a bit.
    +83       */
    +84      public static final String CLEANUP_ORPHANS = "DELETE FROM CpeEntry WHERE id not in (SELECT CPEEntryId FROM Software); ";
    +85      /**
    +86       * SQL Statement to insert a new reference.
    +87       */
    +88      public static final String INSERT_REFERENCE = "INSERT INTO reference (cveid, name, url, source) VALUES (?, ?, ?, ?)";
    +89      /**
    +90       * SQL Statement to insert a new software.
    +91       */
    +92      public static final String INSERT_SOFTWARE = "INSERT INTO software (cveid, cpeEntryId, previousVersion) VALUES (?, ?, ?)";
    +93      /**
    +94       * SQL Statement to insert a new cpe.
    +95       */
    +96      public static final String INSERT_CPE = "INSERT INTO cpeEntry (cpe, vendor, product) VALUES (?, ?, ?)";
    +97      /**
    +98       * SQL Statement to get a CPEProductID.
    +99       */
    +100     public static final String SELECT_CPE_ID = "SELECT id FROM cpeEntry WHERE cpe = ?";
    +101     /**
    +102      * SQL Statement to insert a new vulnerability.
    +103      */
    +104     public static final String INSERT_VULNERABILITY = "INSERT INTO vulnerability (cve, description, cwe, cvssScore, cvssAccessVector, "
    +105             + "cvssAccessComplexity, cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact) "
    +106             + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    +107     /**
    +108      * SQL Statement to update a vulnerability.
    +109      */
    +110     public static final String UPDATE_VULNERABILITY = "UPDATE vulnerability SET description=?, cwe=?, cvssScore=?, cvssAccessVector=?, "
    +111             + "cvssAccessComplexity=?, cvssAuthentication=?, cvssConfidentialityImpact=?, cvssIntegrityImpact=?, cvssAvailabilityImpact=? "
    +112             + "WHERE id=?";
    +113     /**
    +114      * SQL Statement to find CVE entries based on CPE data.
    +115      */
    +116     public static final String SELECT_CVE_FROM_SOFTWARE = "SELECT cve, cpe, previousVersion "
    +117             + "FROM software INNER JOIN vulnerability ON vulnerability.id = software.cveId "
    +118             + "INNER JOIN cpeEntry ON cpeEntry.id = software.cpeEntryId "
    +119             + "WHERE vendor = ? AND product = ?";
    +120     //unfortunately, the version info is too complicated to do in a select. Need to filter this afterwards
    +121     //        + " AND (version = '-' OR previousVersion IS NOT NULL OR version=?)";
    +122     //
    +123     /**
    +124      * SQL Statement to find the CPE entry based on the vendor and product.
    +125      */
    +126     public static final String SELECT_CPE_ENTRIES = "SELECT cpe FROM cpeEntry WHERE vendor = ? AND product = ?";
    +127     /**
    +128      * SQL Statement to select references by CVEID.
    +129      */
    +130     public static final String SELECT_REFERENCE = "SELECT source, name, url FROM reference WHERE cveid = ?";
    +131     /**
    +132      * SQL Statement to select software by CVEID.
    +133      */
    +134     public static final String SELECT_SOFTWARE = "SELECT cpe, previousVersion "
    +135             + "FROM software INNER JOIN cpeEntry ON software.cpeEntryId = cpeEntry.id WHERE cveid = ?";
    +136 //    public static final String SELECT_SOFTWARE = "SELECT part, vendor, product, version, revision, previousVersion "
    +137 //            + "FROM software INNER JOIN cpeProduct ON cpeProduct.id = software.cpeProductId LEFT JOIN cpeVersion ON "
    +138 //            + "software.cpeVersionId = cpeVersion.id LEFT JOIN Version ON cpeVersion.versionId = version.id WHERE cveid = ?";
    +139     /**
    +140      * SQL Statement to select a vulnerability by CVEID.
    +141      */
    +142     public static final String SELECT_VULNERABILITY = "SELECT id, description, cwe, cvssScore, cvssAccessVector, cvssAccessComplexity, "
    +143             + "cvssAuthentication, cvssConfidentialityImpact, cvssIntegrityImpact, cvssAvailabilityImpact FROM vulnerability WHERE cve = ?";
    +144     /**
    +145      * SQL Statement to select a vulnerability's primary key.
    +146      */
    +147     public static final String SELECT_VULNERABILITY_ID = "SELECT id FROM vulnerability WHERE cve = ?";
    +148     //</editor-fold>
    +149 
    +150     /**
    +151      * Opens the database connection. If the database does not exist, it will
    +152      * create a new one.
    +153      *
    +154      * @throws IOException thrown if there is an IO Exception
    +155      * @throws SQLException thrown if there is a SQL Exception
    +156      * @throws DatabaseException thrown if there is an error initializing a new
    +157      * database
    +158      * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +159      * loaded
    +160      */
    +161     @edu.umd.cs.findbugs.annotations.SuppressWarnings(
    +162             value = "DMI_EMPTY_DB_PASSWORD",
    +163             justification = "Yes, I know... Blank password.")
    +164     public void open() throws IOException, SQLException, DatabaseException, ClassNotFoundException {
    +165         /*
    +166          * TODO - make it so we can exteralize the database (lucene index is a problem), could I store it as a blob
    +167          *        and just download it when needed?
    +168          */
    +169 //        String dbDriver = Settings.getString(Settings.KEYS.DB_DRIVER);
    +170 //        String dbConnStr = Settings.getString(Settings.KEYS.DB_CONNECTION_STRING);
    +171 //        if (dbDriver != null && dbConnStr != null) {
    +172 //            Class.forName(dbDriver);
    +173 //            conn = DriverManager.getConnection(dbConnStr);
    +174 //        } else { //use the embeded version
    +175         final String fileName = CveDB.getDataDirectory().getCanonicalPath();
    +176         final File f = new File(fileName, "cve." + DB_SCHEMA_VERSION);
    +177         final File check = new File(f.getAbsolutePath() + ".h2.db");
    +178         final boolean createTables = !check.exists();
    +179         final String connStr = "jdbc:h2:file:" + f.getAbsolutePath();
    +180         Class.forName("org.h2.Driver");
    +181         conn = DriverManager.getConnection(connStr, "sa", "");
    +182         if (createTables) {
    +183             createTables();
    +184         }
    +185 //        }
    +186     }
    +187 
    +188     /**
    +189      * Commits all completed transactions.
    +190      *
    +191      * @throws SQLException thrown if a SQL Exception occurs
    +192      */
    +193     public void commit() throws SQLException {
    +194         if (conn != null) {
    +195             conn.commit();
    +196         }
    +197     }
    +198 
    +199     /**
    +200      * Cleans up the object and ensures that "close" has been called.
    +201      *
    +202      * @throws Throwable thrown if there is a problem
    +203      */
    +204     @Override
    +205     protected void finalize() throws Throwable {
    +206         close();
    +207         super.finalize(); //not necessary if extending Object.
    +208     }
    +209 
    +210     /**
    +211      * Closes the DB4O database. Close should be called on this object when it
    +212      * is done being used.
    +213      */
    +214     public void close() {
    +215         if (conn != null) {
    +216             try {
    +217                 conn.close();
    +218             } catch (SQLException ex) {
    +219                 final String msg = "There was an error attempting to close the CveDB, see the log for more details.";
    +220                 Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, msg, ex);
    +221                 Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
    +222             }
    +223             conn = null;
    +224         }
    +225     }
    +226 
    +227     /**
    +228      * Searches the CPE entries in the database and retrieves all entries for a
    +229      * given vendor and product combination. The returned list will include all
    +230      * versions of the product that are registered in the NVD CVE data.
    +231      *
    +232      * @param vendor the identified vendor name of the dependency being analyzed
    +233      * @param product the identified name of the product of the dependency being
    +234      * analyzed
    +235      * @return a set of vulnerable software
    +236      */
    +237     public Set<VulnerableSoftware> getCPEs(String vendor, String product) {
    +238         final Set<VulnerableSoftware> cpe = new HashSet<VulnerableSoftware>();
    +239         ResultSet rs = null;
    +240         PreparedStatement ps = null;
    +241         try {
    +242             ps = conn.prepareStatement(SELECT_CPE_ENTRIES);
    +243             ps.setString(1, vendor);
    +244             ps.setString(2, product);
    +245             rs = ps.executeQuery();
    +246 
    +247             while (rs.next()) {
    +248                 final VulnerableSoftware vs = new VulnerableSoftware();
    +249                 vs.setCpe(rs.getString(1));
    +250                 cpe.add(vs);
    +251             }
    +252         } catch (SQLException ex) {
    +253             Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
    +254         } finally {
    +255             closeResultSet(rs);
    +256             closeStatement(ps);
    +257         }
    +258         return cpe;
    +259     }
    +260 
    +261     /**
    +262      * Retrieves the vulnerabilities associated with the specified CPE.
    +263      *
    +264      * @param cpeStr the CPE name
    +265      * @return a list of Vulnerabilities
    +266      * @throws DatabaseException thrown if there is an exception retrieving data
    +267      */
    +268     public List<Vulnerability> getVulnerabilities(String cpeStr) throws DatabaseException {
    +269         ResultSet rs = null;
    +270         final VulnerableSoftware cpe = new VulnerableSoftware();
    +271         try {
    +272             cpe.parseName(cpeStr);
    +273         } catch (UnsupportedEncodingException ex) {
    +274             Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
    +275         }
    +276         final DependencyVersion detectedVersion = parseDependencyVersion(cpe);
    +277         final List<Vulnerability> vulnerabilities = new ArrayList<Vulnerability>();
    +278 
    +279         PreparedStatement ps;
    +280         final HashSet<String> cveEntries = new HashSet<String>();
    +281         try {
    +282             ps = conn.prepareStatement(SELECT_CVE_FROM_SOFTWARE);
    +283             ps.setString(1, cpe.getVendor());
    +284             ps.setString(2, cpe.getProduct());
    +285             rs = ps.executeQuery();
    +286             while (rs.next()) {
    +287                 final String cveId = rs.getString(1);
    +288                 final String cpeId = rs.getString(2);
    +289                 final String previous = rs.getString(3);
    +290                 if (!cveEntries.contains(cveId) && isAffected(cpe.getVendor(), cpe.getProduct(), detectedVersion, cpeId, previous)) {
    +291                     cveEntries.add(cveId);
    +292                 }
    +293             }
    +294             closeResultSet(rs);
    +295             closeStatement(ps);
    +296             for (String cve : cveEntries) {
    +297                 final Vulnerability v = getVulnerability(cve);
    +298                 vulnerabilities.add(v);
    +299             }
    +300 
    +301         } catch (SQLException ex) {
    +302             throw new DatabaseException("Exception retrieving vulnerability for " + cpeStr, ex);
    +303         } finally {
    +304             closeResultSet(rs);
    +305         }
    +306         return vulnerabilities;
    +307     }
    +308 
    +309     /**
    +310      * Gets a vulnerability for the provided CVE.
    +311      *
    +312      * @param cve the CVE to lookup
    +313      * @return a vulnerability object
    +314      * @throws DatabaseException if an exception occurs
    +315      */
    +316     private Vulnerability getVulnerability(String cve) throws DatabaseException {
    +317         PreparedStatement psV = null;
    +318         PreparedStatement psR = null;
    +319         PreparedStatement psS = null;
    +320         ResultSet rsV = null;
    +321         ResultSet rsR = null;
    +322         ResultSet rsS = null;
    +323         Vulnerability vuln = null;
    +324         try {
    +325             psV = conn.prepareStatement(SELECT_VULNERABILITY);
    +326             psV.setString(1, cve);
    +327             rsV = psV.executeQuery();
    +328             if (rsV.next()) {
    +329                 vuln = new Vulnerability();
    +330                 vuln.setName(cve);
    +331                 vuln.setDescription(rsV.getString(2));
    +332                 String cwe = rsV.getString(3);
    +333                 if (cwe != null) {
    +334                     final String name = CweDB.getCweName(cwe);
    +335                     if (name != null) {
    +336                         cwe += " " + name;
    +337                     }
    +338                 }
    +339                 final int cveId = rsV.getInt(1);
    +340                 vuln.setCwe(cwe);
    +341                 vuln.setCvssScore(rsV.getFloat(4));
    +342                 vuln.setCvssAccessVector(rsV.getString(5));
    +343                 vuln.setCvssAccessComplexity(rsV.getString(6));
    +344                 vuln.setCvssAuthentication(rsV.getString(7));
    +345                 vuln.setCvssConfidentialityImpact(rsV.getString(8));
    +346                 vuln.setCvssIntegrityImpact(rsV.getString(9));
    +347                 vuln.setCvssAvailabilityImpact(rsV.getString(10));
    +348 
    +349                 psR = conn.prepareStatement(SELECT_REFERENCE);
    +350                 psR.setInt(1, cveId);
    +351                 rsR = psR.executeQuery();
    +352                 while (rsR.next()) {
    +353                     vuln.addReference(rsR.getString(1), rsR.getString(2), rsR.getString(3));
    +354                 }
    +355                 psS = conn.prepareStatement(SELECT_SOFTWARE);
    +356                 psS.setInt(1, cveId);
    +357                 rsS = psS.executeQuery();
    +358                 while (rsS.next()) {
    +359                     final String cpe = rsS.getString(1);
    +360                     final String prevVersion = rsS.getString(2);
    +361                     if (prevVersion == null) {
    +362                         vuln.addVulnerableSoftware(cpe);
    +363                     } else {
    +364                         vuln.addVulnerableSoftware(cpe, prevVersion);
    +365                     }
    +366                 }
    +367             }
    +368         } catch (SQLException ex) {
    +369             throw new DatabaseException("Error retrieving " + cve, ex);
    +370         } finally {
    +371             closeResultSet(rsV);
    +372             closeResultSet(rsR);
    +373             closeResultSet(rsS);
    +374             closeStatement(psV);
    +375             closeStatement(psR);
    +376             closeStatement(psS);
    +377         }
    +378         return vuln;
    +379     }
    +380 
    +381     /**
    +382      * Updates the vulnerability within the database. If the vulnerability does
    +383      * not exist it will be added.
    +384      *
    +385      * @param vuln the vulnerability to add to the database
    +386      * @throws DatabaseException is thrown if the database
    +387      */
    +388     public void updateVulnerability(Vulnerability vuln) throws DatabaseException {
    +389         PreparedStatement selectVulnerabilityId = null;
    +390         PreparedStatement deleteReferences = null;
    +391         PreparedStatement deleteSoftware = null;
    +392         PreparedStatement updateVulnerability = null;
    +393         PreparedStatement insertVulnerability = null;
    +394         PreparedStatement insertReference = null;
    +395         PreparedStatement selectCpeId = null;
    +396         PreparedStatement insertCpe = null;
    +397         PreparedStatement insertSoftware = null;
    +398 
    +399         try {
    +400             selectVulnerabilityId = conn.prepareStatement(SELECT_VULNERABILITY_ID);
    +401             deleteReferences = conn.prepareStatement(DELETE_REFERENCE);
    +402             deleteSoftware = conn.prepareStatement(DELETE_SOFTWARE);
    +403             updateVulnerability = conn.prepareStatement(UPDATE_VULNERABILITY);
    +404             insertVulnerability = conn.prepareStatement(INSERT_VULNERABILITY, Statement.RETURN_GENERATED_KEYS);
    +405             insertReference = conn.prepareStatement(INSERT_REFERENCE);
    +406             selectCpeId = conn.prepareStatement(SELECT_CPE_ID);
    +407             insertCpe = conn.prepareStatement(INSERT_CPE, Statement.RETURN_GENERATED_KEYS);
    +408             insertSoftware = conn.prepareStatement(INSERT_SOFTWARE);
    +409             int vulnerabilityId = 0;
    +410             selectVulnerabilityId.setString(1, vuln.getName());
    +411             ResultSet rs = selectVulnerabilityId.executeQuery();
    +412             if (rs.next()) {
    +413                 vulnerabilityId = rs.getInt(1);
    +414                 // first delete any existing vulnerability info. We don't know what was updated. yes, slower but atm easier.
    +415                 deleteReferences.setInt(1, vulnerabilityId);
    +416                 deleteReferences.execute();
    +417                 deleteSoftware.setInt(1, vulnerabilityId);
    +418                 deleteSoftware.execute();
    +419             }
    +420             closeResultSet(rs);
    +421             rs = null;
    +422             if (vulnerabilityId != 0) {
    +423                 updateVulnerability.setString(1, vuln.getDescription());
    +424                 updateVulnerability.setString(2, vuln.getCwe());
    +425                 updateVulnerability.setFloat(3, vuln.getCvssScore());
    +426                 updateVulnerability.setString(4, vuln.getCvssAccessVector());
    +427                 updateVulnerability.setString(5, vuln.getCvssAccessComplexity());
    +428                 updateVulnerability.setString(6, vuln.getCvssAuthentication());
    +429                 updateVulnerability.setString(7, vuln.getCvssConfidentialityImpact());
    +430                 updateVulnerability.setString(8, vuln.getCvssIntegrityImpact());
    +431                 updateVulnerability.setString(9, vuln.getCvssAvailabilityImpact());
    +432                 updateVulnerability.setInt(10, vulnerabilityId);
    +433                 updateVulnerability.executeUpdate();
    +434             } else {
    +435                 insertVulnerability.setString(1, vuln.getName());
    +436                 insertVulnerability.setString(2, vuln.getDescription());
    +437                 insertVulnerability.setString(3, vuln.getCwe());
    +438                 insertVulnerability.setFloat(4, vuln.getCvssScore());
    +439                 insertVulnerability.setString(5, vuln.getCvssAccessVector());
    +440                 insertVulnerability.setString(6, vuln.getCvssAccessComplexity());
    +441                 insertVulnerability.setString(7, vuln.getCvssAuthentication());
    +442                 insertVulnerability.setString(8, vuln.getCvssConfidentialityImpact());
    +443                 insertVulnerability.setString(9, vuln.getCvssIntegrityImpact());
    +444                 insertVulnerability.setString(10, vuln.getCvssAvailabilityImpact());
    +445                 insertVulnerability.execute();
    +446                 try {
    +447                     rs = insertVulnerability.getGeneratedKeys();
    +448                     rs.next();
    +449                     vulnerabilityId = rs.getInt(1);
    +450                 } catch (SQLException ex) {
    +451                     final String msg = String.format("Unable to retrieve id for new vulnerability for '%s'", vuln.getName());
    +452                     throw new DatabaseException(msg, ex);
    +453                 } finally {
    +454                     closeResultSet(rs);
    +455                     rs = null;
    +456                 }
    +457             }
    +458             insertReference.setInt(1, vulnerabilityId);
    +459             for (Reference r : vuln.getReferences()) {
    +460                 insertReference.setString(2, r.getName());
    +461                 insertReference.setString(3, r.getUrl());
    +462                 insertReference.setString(4, r.getSource());
    +463                 insertReference.execute();
    +464             }
    +465             for (VulnerableSoftware s : vuln.getVulnerableSoftware()) {
    +466                 int cpeProductId = 0;
    +467                 selectCpeId.setString(1, s.getName());
    +468                 try {
    +469                     rs = selectCpeId.executeQuery();
    +470                     if (rs.next()) {
    +471                         cpeProductId = rs.getInt(1);
    +472                     }
    +473                 } catch (SQLException ex) {
    +474                     throw new DatabaseException("Unable to get primary key for new cpe: " + s.getName(), ex);
    +475                 } finally {
    +476                     closeResultSet(rs);
    +477                     rs = null;
    +478                 }
    +479 
    +480                 if (cpeProductId == 0) {
    +481                     insertCpe.setString(1, s.getName());
    +482                     insertCpe.setString(2, s.getVendor());
    +483                     insertCpe.setString(3, s.getProduct());
    +484                     insertCpe.executeUpdate();
    +485                     cpeProductId = getGeneratedKey(insertCpe);
    +486                 }
    +487                 if (cpeProductId == 0) {
    +488                     throw new DatabaseException("Unable to retrieve cpeProductId - no data returned");
    +489                 }
    +490 
    +491                 insertSoftware.setInt(1, vulnerabilityId);
    +492                 insertSoftware.setInt(2, cpeProductId);
    +493                 if (s.getPreviousVersion() == null) {
    +494                     insertSoftware.setNull(3, java.sql.Types.VARCHAR);
    +495                 } else {
    +496                     insertSoftware.setString(3, s.getPreviousVersion());
    +497                 }
    +498                 insertSoftware.execute();
    +499             }
    +500 
    +501         } catch (SQLException ex) {
    +502             final String msg = String.format("Error updating '%s'", vuln.getName());
    +503             Logger.getLogger(CveDB.class.getName()).log(Level.FINE, null, ex);
    +504             throw new DatabaseException(msg, ex);
    +505         } finally {
    +506             closeStatement(selectVulnerabilityId);
    +507             closeStatement(deleteReferences);
    +508             closeStatement(deleteSoftware);
    +509             closeStatement(updateVulnerability);
    +510             closeStatement(insertVulnerability);
    +511             closeStatement(insertReference);
    +512             closeStatement(selectCpeId);
    +513             closeStatement(insertCpe);
    +514             closeStatement(insertSoftware);
    +515         }
    +516     }
    +517 
    +518     /**
    +519      * Retrieves the directory that the JAR file exists in so that we can ensure
    +520      * we always use a common data directory.
    +521      *
    +522      * @return the data directory for this index.
    +523      * @throws IOException is thrown if an IOException occurs of course...
    +524      */
    +525     public static File getDataDirectory() throws IOException {
    +526         final File path = Settings.getFile(Settings.KEYS.CVE_DATA_DIRECTORY);
    +527         if (!path.exists()) {
    +528             if (!path.mkdirs()) {
    +529                 throw new IOException("Unable to create NVD CVE Data directory");
    +530             }
    +531         }
    +532         return path;
    +533     }
    +534 
    +535     /**
    +536      * It is possible that orphaned rows may be generated during database
    +537      * updates. This should be called after all updates have been completed to
    +538      * ensure orphan entries are removed.
    +539      */
    +540     public void cleanupDatabase() {
    +541         PreparedStatement ps = null;
    +542         try {
    +543             ps = conn.prepareStatement(CLEANUP_ORPHANS);
    +544             if (ps != null) {
    +545                 ps.executeUpdate();
    +546             }
    +547         } catch (SQLException ex) {
    +548             Logger.getLogger(CveDB.class.getName()).log(Level.SEVERE, null, ex);
    +549         } finally {
    +550             closeStatement(ps);
    +551         }
    +552     }
    +553 
    +554     /**
    +555      * Creates the database structure (tables and indexes) to store the CVE data
    +556      *
    +557      * @throws SQLException thrown if there is a sql exception
    +558      * @throws DatabaseException thrown if there is a database exception
    +559      */
    +560     protected void createTables() throws SQLException, DatabaseException {
    +561         InputStream is;
    +562         InputStreamReader reader;
    +563         BufferedReader in = null;
    +564         try {
    +565             is = this.getClass().getClassLoader().getResourceAsStream(DB_STRUCTURE_RESOURCE);
    +566             reader = new InputStreamReader(is, "UTF-8");
    +567             in = new BufferedReader(reader);
    +568             final StringBuilder sb = new StringBuilder(2110);
    +569             String tmp;
    +570             while ((tmp = in.readLine()) != null) {
    +571                 sb.append(tmp);
    +572             }
    +573             Statement statement = null;
    +574             try {
    +575                 statement = conn.createStatement();
    +576                 statement.execute(sb.toString());
    +577             } finally {
    +578                 closeStatement(statement);
    +579             }
    +580         } catch (IOException ex) {
    +581             throw new DatabaseException("Unable to create database schema", ex);
    +582         } finally {
    +583             if (in != null) {
    +584                 try {
    +585                     in.close();
    +586                 } catch (IOException ex) {
    +587                     Logger.getLogger(CveDB.class
    +588                             .getName()).log(Level.FINEST, null, ex);
    +589                 }
    +590             }
    +591         }
    +592     }
    +593 
    +594     /**
    +595      * Closes the given statement object ignoring any exceptions that occur.
    +596      *
    +597      * @param statement a Statement object
    +598      */
    +599     private void closeStatement(Statement statement) {
    +600         if (statement != null) {
    +601             try {
    +602                 statement.close();
    +603             } catch (SQLException ex) {
    +604                 Logger.getLogger(CveDB.class
    +605                         .getName()).log(Level.FINEST, statement.toString(), ex);
    +606             }
    +607         }
    +608     }
    +609 
    +610     /**
    +611      * Closes the result set capturing and ignoring any SQLExceptions that
    +612      * occur.
    +613      *
    +614      * @param rs a ResultSet to close
    +615      */
    +616     private void closeResultSet(ResultSet rs) {
    +617         if (rs != null) {
    +618             try {
    +619                 rs.close();
    +620             } catch (SQLException ex) {
    +621                 Logger.getLogger(CveDB.class
    +622                         .getName()).log(Level.FINEST, rs.toString(), ex);
    +623             }
    +624         }
    +625     }
    +626 
    +627     /**
    +628      * Returns the generated integer primary key for a newly inserted row.
    +629      *
    +630      * @param statement a prepared statement that just executed an insert
    +631      * @return a primary key
    +632      * @throws DatabaseException thrown if there is an exception obtaining the
    +633      * key
    +634      */
    +635     private int getGeneratedKey(PreparedStatement statement) throws DatabaseException {
    +636         ResultSet rs = null;
    +637         int id = 0;
    +638         try {
    +639             rs = statement.getGeneratedKeys();
    +640             rs.next();
    +641             id = rs.getInt(1);
    +642         } catch (SQLException ex) {
    +643             throw new DatabaseException("Unable to get primary key for inserted row");
    +644         } finally {
    +645             closeResultSet(rs);
    +646         }
    +647         return id;
    +648     }
    +649 
    +650     /**
    +651      * Determines if the given identifiedVersion is affected by the given cpeId
    +652      * and previous version flag. A non-null, non-empty string passed to the
    +653      * previous version argument indicates that all previous versions are
    +654      * affected.
    +655      *
    +656      * @param vendor the vendor of the dependency being analyzed
    +657      * @param product the product name of the dependency being analyzed
    +658      * @param identifiedVersion the identified version of the dependency being
    +659      * analyzed
    +660      * @param cpeId the cpe identifier of software that has a known
    +661      * vulnerability
    +662      * @param previous a flag indicating if previous versions of the product are
    +663      * vulnerable
    +664      * @return true if the identified version is affected, otherwise false
    +665      */
    +666     private boolean isAffected(String vendor, String product, DependencyVersion identifiedVersion, String cpeId, String previous) {
    +667         boolean affected = false;
    +668         final boolean isStruts = "apache".equals(vendor) && "struts".equals(product);
    +669         final DependencyVersion v = parseDependencyVersion(cpeId);
    +670         final boolean prevAffected = previous == null ? false : !previous.isEmpty();
    +671         if (identifiedVersion == null || "-".equals(identifiedVersion.toString())) {
    +672             if (v == null || "-".equals(v.toString())) {
    +673                 affected = true;
    +674             }
    +675         } else if (identifiedVersion.equals(v) || (prevAffected && identifiedVersion.compareTo(v) < 0)) {
    +676             if (isStruts) { //struts 2 vulns don't affect struts 1
    +677                 if (identifiedVersion.getVersionParts().get(0).equals(v.getVersionParts().get(0))) {
    +678                     affected = true;
    +679                 }
    +680             } else {
    +681                 affected = true;
    +682             }
    +683         }
    +684         /*
    +685          * TODO consider utilizing the matchThreeVersion method to get additional results. However, this
    +686          *      might also introduce false positives.
    +687          */
    +688         return affected;
    +689     }
    +690 
    +691     /**
    +692      * Parses the version (including revision) from a CPE identifier. If no
    +693      * version is identified then a '-' is returned.
    +694      *
    +695      * @param cpeStr a cpe identifier
    +696      * @return a dependency version
    +697      */
    +698     private DependencyVersion parseDependencyVersion(String cpeStr) {
    +699         final VulnerableSoftware cpe = new VulnerableSoftware();
    +700         try {
    +701             cpe.parseName(cpeStr);
    +702         } catch (UnsupportedEncodingException ex) {
    +703             //never going to happen.
    +704             Logger.getLogger(CveDB.class.getName()).log(Level.FINEST, null, ex);
    +705         }
    +706         return parseDependencyVersion(cpe);
    +707     }
    +708 
    +709     /**
    +710      * Takes a CPE and parses out the version number. If no version is
    +711      * identified then a '-' is returned.
    +712      *
    +713      * @param cpe a cpe object
    +714      * @return a dependency version
    +715      */
    +716     private DependencyVersion parseDependencyVersion(VulnerableSoftware cpe) {
    +717         DependencyVersion cpeVersion;
    +718         if (cpe.getVersion() != null && cpe.getVersion().length() > 0) {
    +719             String versionText;
    +720             if (cpe.getRevision() != null && cpe.getRevision().length() > 0) {
    +721                 versionText = String.format("%s.%s", cpe.getVersion(), cpe.getRevision());
    +722             } else {
    +723                 versionText = cpe.getVersion();
    +724             }
    +725             cpeVersion = DependencyVersionUtil.parseVersion(versionText);
    +726         } else {
    +727             cpeVersion = new DependencyVersion("-");
    +728         }
    +729         return cpeVersion;
    +730     }
    +731 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html new file mode 100644 index 000000000..01df7fe62 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/DatabaseException.html @@ -0,0 +1,65 @@ + + + + +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 msg the exception message
    +46       * @param ex the cause of the exception
    +47       */
    +48      public DatabaseException(String msg, Exception ex) {
    +49          super(msg, ex);
    +50      }
    +51  }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html new file mode 100644 index 000000000..582e0e071 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/NvdCveAnalyzer.html @@ -0,0 +1,237 @@ + + + + +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.data.nvdcve;
    +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.analyzer.AnalysisException;
    +27  import org.owasp.dependencycheck.analyzer.AnalysisPhase;
    +28  import org.owasp.dependencycheck.dependency.Dependency;
    +29  import org.owasp.dependencycheck.dependency.Vulnerability;
    +30  import org.owasp.dependencycheck.dependency.Identifier;
    +31  import org.owasp.dependencycheck.analyzer.Analyzer;
    +32  
    +33  /**
    +34   * NvdCveAnalyzer is a utility class that takes a project dependency and
    +35   * attempts to discern if there is an associated CVEs. It uses the the
    +36   * identifiers found by other analyzers to lookup the CVE data.
    +37   *
    +38   * @author Jeremy Long (jeremy.long@owasp.org)
    +39   */
    +40  public class NvdCveAnalyzer implements Analyzer {
    +41  
    +42      /**
    +43       * The maximum number of query results to return.
    +44       */
    +45      static final int MAX_QUERY_RESULTS = 100;
    +46      /**
    +47       * The CVE Index.
    +48       */
    +49      private CveDB cveDB;
    +50  
    +51      /**
    +52       * Opens the data source.
    +53       *
    +54       * @throws SQLException thrown when there is a SQL Exception
    +55       * @throws IOException thrown when there is an IO Exception
    +56       * @throws DatabaseException thrown when there is a database exceptions
    +57       * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +58       * loaded
    +59       */
    +60      public void open() throws SQLException, IOException, DatabaseException, ClassNotFoundException {
    +61          cveDB = new CveDB();
    +62          cveDB.open();
    +63      }
    +64  
    +65      /**
    +66       * Closes the data source.
    +67       */
    +68      public void close() {
    +69          cveDB.close();
    +70          cveDB = null;
    +71      }
    +72  
    +73      /**
    +74       * Returns the status of the data source - is the database open.
    +75       *
    +76       * @return true or false.
    +77       */
    +78      public boolean isOpen() {
    +79          return (cveDB != null);
    +80      }
    +81  
    +82      /**
    +83       * Ensures that the CVE Database is closed.
    +84       *
    +85       * @throws Throwable when a throwable is thrown.
    +86       */
    +87      @Override
    +88      protected void finalize() throws Throwable {
    +89          super.finalize();
    +90          if (isOpen()) {
    +91              close();
    +92          }
    +93      }
    +94  
    +95      /**
    +96       * Analyzes a dependency and attempts to determine if there are any CPE
    +97       * identifiers for this dependency.
    +98       *
    +99       * @param dependency The Dependency to analyze
    +100      * @param engine The analysis engine
    +101      * @throws AnalysisException is thrown if there is an issue analyzing the
    +102      * dependency
    +103      */
    +104     public void analyze(Dependency dependency, Engine engine) throws AnalysisException {
    +105         for (Identifier id : dependency.getIdentifiers()) {
    +106             if ("cpe".equals(id.getType())) {
    +107                 try {
    +108                     final String value = id.getValue();
    +109                     final List<Vulnerability> vulns = cveDB.getVulnerabilities(value);
    +110                     dependency.getVulnerabilities().addAll(vulns);
    +111 //TODO - remove this comment block after additional testing is completed
    +112 //note - valid match functionality has been moved into the CveDB class.
    +113 ////                    for (Vulnerability v : vulns) {
    +114 ////                        if (isValidMatch(dependency, v)) {
    +115 ////                            dependency.addVulnerability(v);
    +116 ////                        }
    +117 ////                    }
    +118                 } catch (DatabaseException ex) {
    +119                     throw new AnalysisException(ex);
    +120                 }
    +121             }
    +122         }
    +123     }
    +124 
    +125     /**
    +126      * Returns true because this analyzer supports all dependency types.
    +127      *
    +128      * @return true.
    +129      */
    +130     public Set<String> getSupportedExtensions() {
    +131         return null;
    +132     }
    +133 
    +134     /**
    +135      * Returns the name of this analyzer.
    +136      *
    +137      * @return the name of this analyzer.
    +138      */
    +139     public String getName() {
    +140         return "NVD CVE Analyzer";
    +141     }
    +142 
    +143     /**
    +144      * Returns true because this analyzer supports all dependency types.
    +145      *
    +146      * @param extension the file extension of the dependency being analyzed.
    +147      * @return true.
    +148      */
    +149     public boolean supportsExtension(String extension) {
    +150         return true;
    +151     }
    +152 
    +153     /**
    +154      * Returns the analysis phase that this analyzer should run in.
    +155      *
    +156      * @return the analysis phase that this analyzer should run in.
    +157      */
    +158     public AnalysisPhase getAnalysisPhase() {
    +159         return AnalysisPhase.FINDING_ANALYSIS;
    +160     }
    +161 
    +162     /**
    +163      * Opens the NVD CVE Lucene Index.
    +164      *
    +165      * @throws Exception is thrown if there is an issue opening the index.
    +166      */
    +167     public void initialize() throws Exception {
    +168         this.open();
    +169     }
    +170 //TODO - remove this comment block after additional testing is completed
    +171 // The following check has been moved into the CveDB class.
    +172 ////    /**
    +173 ////     * <p>Determines if this is a valid vulnerability match for the given
    +174 ////     * dependency. Specifically, this is concerned with ensuring the version
    +175 ////     * numbers are correct.</p>
    +176 ////     * <p>Currently, this is focused on the issues with the versions for Struts
    +177 ////     * 1 and Struts 2. In the future this will due better matching on more
    +178 ////     * version numbers.</p>
    +179 ////     *
    +180 ////     * @param dependency the dependency
    +181 ////     * @param v the vulnerability
    +182 ////     * @return returns true if the vulnerability is for the given dependency
    +183 ////     */
    +184 ////    private boolean isValidMatch(final Dependency dependency, final Vulnerability v) {
    +185 ////        //right now I only know of the issue with Struts1/2
    +186 ////        // start with fixing this problem.
    +187 ////
    +188 ////        //TODO extend this solution to do better version matching for the vulnerable software.
    +189 ////        boolean struts1 = false;
    +190 ////        boolean struts2 = false;
    +191 ////        for (Identifier i : dependency.getIdentifiers()) {
    +192 ////            if (i.getValue().startsWith("cpe:/a:apache:struts:")) {
    +193 ////                final char version = i.getValue().charAt(21);
    +194 ////                if (version == '1') {
    +195 ////                    struts1 = true;
    +196 ////                }
    +197 ////                if (version == '2') {
    +198 ////                    struts2 = true;
    +199 ////                }
    +200 ////            }
    +201 ////        }
    +202 ////        if (!struts1 && !struts2) {
    +203 ////            return true; //we are not looking at struts, so return true.
    +204 ////        }
    +205 ////        if (struts1 && struts2) {
    +206 ////            return true; //there is a mismatch here, but we can't solve it here so we return valid.
    +207 ////        }
    +208 ////        if (struts1) {
    +209 ////            boolean hasStruts1Vuln = false;
    +210 ////            boolean hasStruts2PreviousVersion = false;
    +211 ////            for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
    +212 ////                //TODO FIX THIS
    +213 ////                //hasStruts2PreviousVersion |= vs.hasPreviousVersion() && vs.getName().charAt(21) == '2';
    +214 ////                //hasStruts1Vuln |= vs.getName().charAt(21) == '1';
    +215 ////            }
    +216 ////            if (!hasStruts1Vuln && hasStruts2PreviousVersion) {
    +217 ////                return false;
    +218 ////            }
    +219 ////        }
    +220 ////
    +221 ////        return true;
    +222 ////    }
    +223 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html new file mode 100644 index 000000000..616f69cb4 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-frame.html @@ -0,0 +1,33 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve + + + + +

    + org.owasp.dependencycheck.data.nvdcve +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html new file mode 100644 index 000000000..1fc52f37b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/package-summary.html @@ -0,0 +1,82 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve

    + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + CorruptDatabaseException +
    + CveDB +
    + DatabaseException +
    + NvdCveAnalyzer +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html new file mode 100644 index 000000000..7434bec01 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/DatabaseUpdater.html @@ -0,0 +1,685 @@ + + + + +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.nvdcve.xml;
    +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 javax.xml.parsers.ParserConfigurationException;
    +30  import org.owasp.dependencycheck.data.CachedWebDataSource;
    +31  import java.net.MalformedURLException;
    +32  import java.net.URL;
    +33  import java.sql.SQLException;
    +34  import java.util.Calendar;
    +35  import java.util.Date;
    +36  import java.util.HashMap;
    +37  import java.util.List;
    +38  import java.util.Map;
    +39  import java.util.Properties;
    +40  import java.util.logging.Level;
    +41  import java.util.logging.Logger;
    +42  import javax.xml.parsers.SAXParser;
    +43  import javax.xml.parsers.SAXParserFactory;
    +44  import org.owasp.dependencycheck.data.UpdateException;
    +45  import org.owasp.dependencycheck.data.cpe.Index;
    +46  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +47  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +48  import org.owasp.dependencycheck.utils.DownloadFailedException;
    +49  import org.owasp.dependencycheck.utils.Downloader;
    +50  import org.owasp.dependencycheck.utils.FileUtils;
    +51  import org.owasp.dependencycheck.utils.InvalidSettingException;
    +52  import org.owasp.dependencycheck.utils.Settings;
    +53  import org.xml.sax.SAXException;
    +54  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +55  
    +56  /**
    +57   *
    +58   * @author Jeremy Long (jeremy.long@owasp.org)
    +59   */
    +60  public class DatabaseUpdater implements CachedWebDataSource {
    +61  
    +62      /**
    +63       * The name of the properties file containing the timestamp of the last
    +64       * update.
    +65       */
    +66      private static final String UPDATE_PROPERTIES_FILE = "lastupdated.prop";
    +67      /**
    +68       * The properties file key for the last updated field - used to store the
    +69       * last updated time of the Modified NVD CVE xml file.
    +70       */
    +71      private static final String LAST_UPDATED_MODIFIED = "lastupdated.modified";
    +72      /**
    +73       * Stores the last updated time for each of the NVD CVE files. These
    +74       * timestamps should be updated if we process the modified file within 7
    +75       * days of the last update.
    +76       */
    +77      private static final String LAST_UPDATED_BASE = "lastupdated.";
    +78      /**
    +79       * Modified key word.
    +80       */
    +81      public static final String MODIFIED = "modified";
    +82      /**
    +83       * Reference to the Cve Database.
    +84       */
    +85      private CveDB cveDB = null;
    +86      /**
    +87       * Reference to the Cpe Index.
    +88       */
    +89      private Index cpeIndex = null;
    +90  
    +91      /**
    +92       * <p>Downloads the latest NVD CVE XML file from the web and imports it into
    +93       * the current CVE Database.</p>
    +94       *
    +95       * @throws UpdateException is thrown if there is an error updating the
    +96       * database
    +97       */
    +98      public void update() throws UpdateException {
    +99          try {
    +100             final Map<String, NvdCveUrl> update = updateNeeded();
    +101             int maxUpdates = 0;
    +102             for (NvdCveUrl cve : update.values()) {
    +103                 if (cve.getNeedsUpdate()) {
    +104                     maxUpdates += 1;
    +105                 }
    +106             }
    +107             if (maxUpdates > 3) {
    +108                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
    +109                         "NVD CVE requires several updates; this could take a couple of minutes.");
    +110             }
    +111             if (maxUpdates > 0) {
    +112                 openDataStores();
    +113             }
    +114             int count = 0;
    +115 
    +116             for (NvdCveUrl cve : update.values()) {
    +117                 if (cve.getNeedsUpdate()) {
    +118                     count += 1;
    +119                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
    +120                             "Updating NVD CVE ({0} of {1})", new Object[]{count, maxUpdates});
    +121                     URL url = new URL(cve.getUrl());
    +122                     File outputPath = null;
    +123                     File outputPath12 = null;
    +124                     try {
    +125                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
    +126                                 "Downloading {0}", cve.getUrl());
    +127 
    +128                         outputPath = File.createTempFile("cve" + cve.getId() + "_", ".xml");
    +129                         Downloader.fetchFile(url, outputPath, false);
    +130 
    +131                         url = new URL(cve.getOldSchemaVersionUrl());
    +132                         outputPath12 = File.createTempFile("cve_1_2_" + cve.getId() + "_", ".xml");
    +133                         Downloader.fetchFile(url, outputPath12, false);
    +134 
    +135                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
    +136                                 "Processing {0}", cve.getUrl());
    +137 
    +138                         importXML(outputPath, outputPath12);
    +139 
    +140                         cveDB.commit();
    +141                         cpeIndex.commit();
    +142 
    +143                         writeLastUpdatedPropertyFile(cve);
    +144 
    +145                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO,
    +146                                 "Completed update {0} of {1}", new Object[]{count, maxUpdates});
    +147                     } catch (FileNotFoundException ex) {
    +148                         throw new UpdateException(ex);
    +149                     } catch (ParserConfigurationException ex) {
    +150                         throw new UpdateException(ex);
    +151                     } catch (SAXException ex) {
    +152                         throw new UpdateException(ex);
    +153                     } catch (IOException ex) {
    +154                         throw new UpdateException(ex);
    +155                     } catch (SQLException ex) {
    +156                         throw new UpdateException(ex);
    +157                     } catch (DatabaseException ex) {
    +158                         throw new UpdateException(ex);
    +159                     } catch (ClassNotFoundException ex) {
    +160                         throw new UpdateException(ex);
    +161                     } finally {
    +162                         boolean deleted = false;
    +163                         try {
    +164                             if (outputPath != null && outputPath.exists()) {
    +165                                 deleted = outputPath.delete();
    +166                             }
    +167                         } finally {
    +168                             if (outputPath != null && (outputPath.exists() || !deleted)) {
    +169                                 outputPath.deleteOnExit();
    +170                             }
    +171                         }
    +172                         try {
    +173                             deleted = false;
    +174                             if (outputPath12 != null && outputPath12.exists()) {
    +175                                 deleted = outputPath12.delete();
    +176                             }
    +177                         } finally {
    +178                             if (outputPath12 != null && (outputPath12.exists() || !deleted)) {
    +179                                 outputPath12.deleteOnExit();
    +180                             }
    +181                         }
    +182                     }
    +183                 }
    +184             }
    +185             if (maxUpdates >= 1) {
    +186                 ensureModifiedIsInLastUpdatedProperties(update);
    +187                 cveDB.cleanupDatabase();
    +188             }
    +189         } catch (MalformedURLException ex) {
    +190             throw new UpdateException(ex);
    +191         } catch (DownloadFailedException ex) {
    +192             throw new UpdateException(ex);
    +193         } finally {
    +194             closeDataStores();
    +195         }
    +196     }
    +197 
    +198     /**
    +199      * Imports the NVD CVE XML File into the Lucene Index.
    +200      *
    +201      * @param file the file containing the NVD CVE XML
    +202      * @param oldVersion contains the file containing the NVD CVE XML 1.2
    +203      * @throws ParserConfigurationException is thrown if there is a parser
    +204      * configuration exception
    +205      * @throws SAXException is thrown if there is a SAXException
    +206      * @throws IOException is thrown if there is a ioexception
    +207      * @throws SQLException is thrown if there is a sql exception
    +208      * @throws DatabaseException is thrown if there is a database exception
    +209      * @throws ClassNotFoundException thrown if the h2 database driver cannot be
    +210      * loaded
    +211      */
    +212     private void importXML(File file, File oldVersion)
    +213             throws ParserConfigurationException, SAXException, IOException, SQLException, DatabaseException, ClassNotFoundException {
    +214 
    +215         final SAXParserFactory factory = SAXParserFactory.newInstance();
    +216         final SAXParser saxParser = factory.newSAXParser();
    +217 
    +218         final NvdCve12Handler cve12Handler = new NvdCve12Handler();
    +219         saxParser.parse(oldVersion, cve12Handler);
    +220         final Map<String, List<VulnerableSoftware>> prevVersionVulnMap = cve12Handler.getVulnerabilities();
    +221 
    +222         final NvdCve20Handler cve20Handler = new NvdCve20Handler();
    +223         cve20Handler.setCveDB(cveDB);
    +224         cve20Handler.setPrevVersionVulnMap(prevVersionVulnMap);
    +225         cve20Handler.setCpeIndex(cpeIndex);
    +226         saxParser.parse(file, cve20Handler);
    +227     }
    +228 
    +229     /**
    +230      * Closes the CVE and CPE data stores.
    +231      */
    +232     private void closeDataStores() {
    +233         if (cveDB != null) {
    +234             try {
    +235                 cveDB.close();
    +236             } catch (Exception ignore) {
    +237                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, "Error closing the cveDB", ignore);
    +238             }
    +239         }
    +240         if (cpeIndex != null) {
    +241             try {
    +242                 cpeIndex.close();
    +243             } catch (Exception ignore) {
    +244                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, "Error closing the cpeIndex", ignore);
    +245             }
    +246         }
    +247     }
    +248 
    +249     /**
    +250      * Opens the CVE and CPE data stores.
    +251      *
    +252      * @throws UpdateException thrown if a data store cannot be opened
    +253      */
    +254     private void openDataStores() throws UpdateException {
    +255         //open the cve and cpe data stores
    +256         try {
    +257             cveDB = new CveDB();
    +258             cveDB.open();
    +259             cpeIndex = new Index();
    +260             cpeIndex.openIndexWriter();
    +261         } catch (IOException ex) {
    +262             closeDataStores();
    +263             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "IO Error opening databases", ex);
    +264             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +265         } catch (SQLException ex) {
    +266             closeDataStores();
    +267             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "SQL Exception opening databases", ex);
    +268             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +269         } catch (DatabaseException ex) {
    +270             closeDataStores();
    +271             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Database Exception opening databases", ex);
    +272             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +273         } catch (ClassNotFoundException ex) {
    +274             closeDataStores();
    +275             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Class not found exception opening databases", ex);
    +276             throw new UpdateException("Error updating the CPE/CVE data, please see the log file for more details.");
    +277         }
    +278     }
    +279 
    +280     //<editor-fold defaultstate="collapsed" desc="Code to read/write properties files regarding the last update dates">
    +281     /**
    +282      * Writes a properties file containing the last updated date to the
    +283      * VULNERABLE_CPE directory.
    +284      *
    +285      * @param updatedValue the updated nvdcve entry
    +286      * @throws UpdateException is thrown if there is an update exception
    +287      */
    +288     private void writeLastUpdatedPropertyFile(NvdCveUrl updatedValue) throws UpdateException {
    +289         if (updatedValue == null) {
    +290             return;
    +291         }
    +292         String dir;
    +293         try {
    +294             dir = CveDB.getDataDirectory().getCanonicalPath();
    +295         } catch (IOException ex) {
    +296             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Error updating the databases propterty file.", ex);
    +297             throw new UpdateException("Unable to locate last updated properties file.", ex);
    +298         }
    +299         final File cveProp = new File(dir, UPDATE_PROPERTIES_FILE);
    +300         final Properties prop = new Properties();
    +301         if (cveProp.exists()) {
    +302             FileInputStream in = null;
    +303             try {
    +304                 in = new FileInputStream(cveProp);
    +305                 prop.load(in);
    +306             } catch (Exception ignoreMe) {
    +307                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ignoreMe);
    +308             } finally {
    +309                 if (in != null) {
    +310                     try {
    +311                         in.close();
    +312                     } catch (Exception ignoreMeToo) {
    +313                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ignoreMeToo);
    +314                     }
    +315                 }
    +316             }
    +317 
    +318         }
    +319         prop.put("version", CveDB.DB_SCHEMA_VERSION);
    +320         prop.put(LAST_UPDATED_BASE + updatedValue.getId(), String.valueOf(updatedValue.getTimestamp()));
    +321 
    +322         OutputStream os = null;
    +323         OutputStreamWriter out = null;
    +324         try {
    +325             os = new FileOutputStream(cveProp);
    +326             out = new OutputStreamWriter(os, "UTF-8");
    +327             prop.store(out, dir);
    +328         } catch (FileNotFoundException ex) {
    +329             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +330             throw new UpdateException("Unable to find last updated properties file.", ex);
    +331         } catch (IOException ex) {
    +332             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +333             throw new UpdateException("Unable to update last updated properties file.", ex);
    +334         } finally {
    +335             if (out != null) {
    +336                 try {
    +337                     out.close();
    +338                 } catch (IOException ex) {
    +339                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +340                 }
    +341             }
    +342             if (os != null) {
    +343                 try {
    +344                     os.close();
    +345                 } catch (IOException ex) {
    +346                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +347                 }
    +348             }
    +349         }
    +350     }
    +351 
    +352     /**
    +353      * Determines if the index needs to be updated. This is done by fetching the
    +354      * nvd cve meta data and checking the last update date. If the data needs to
    +355      * be refreshed this method will return the NvdCveUrl for the files that
    +356      * need to be updated.
    +357      *
    +358      * @return the NvdCveUrl of the files that need to be updated.
    +359      * @throws MalformedURLException is thrown if the URL for the NVD CVE Meta
    +360      * data is incorrect.
    +361      * @throws DownloadFailedException is thrown if there is an error.
    +362      * downloading the nvd cve download data file.
    +363      * @throws UpdateException Is thrown if there is an issue with the last
    +364      * updated properties file.
    +365      */
    +366     public Map<String, NvdCveUrl> updateNeeded() throws MalformedURLException, DownloadFailedException, UpdateException {
    +367 
    +368         Map<String, NvdCveUrl> currentlyPublished;
    +369         try {
    +370             currentlyPublished = retrieveCurrentTimestampsFromWeb();
    +371         } catch (InvalidDataException ex) {
    +372             final String msg = "Unable to retrieve valid timestamp from nvd cve downloads page";
    +373             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, msg, ex);
    +374             throw new DownloadFailedException(msg, ex);
    +375 
    +376         } catch (InvalidSettingException ex) {
    +377             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "Invalid setting found when retrieving timestamps", ex);
    +378             throw new DownloadFailedException("Invalid settings", ex);
    +379         }
    +380 
    +381         if (currentlyPublished == null) {
    +382             throw new DownloadFailedException("Unable to retrieve valid timestamp from nvd cve downloads page");
    +383         }
    +384         String dir;
    +385         try {
    +386             dir = CveDB.getDataDirectory().getCanonicalPath();
    +387         } catch (IOException ex) {
    +388             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, "CveDB data directory doesn't exist?", ex);
    +389             throw new UpdateException("Unable to locate last updated properties file.", ex);
    +390         }
    +391 
    +392         final File f = new File(dir);
    +393         if (f.exists()) {
    +394             final File cveProp = new File(dir, UPDATE_PROPERTIES_FILE);
    +395             if (cveProp.exists()) {
    +396                 final Properties prop = new Properties();
    +397                 InputStream is = null;
    +398                 try {
    +399                     is = new FileInputStream(cveProp);
    +400                     prop.load(is);
    +401 
    +402                     boolean deleteAndRecreate = false;
    +403                     float version;
    +404 
    +405                     if (prop.getProperty("version") == null) {
    +406                         deleteAndRecreate = true;
    +407                     } else {
    +408                         try {
    +409                             version = Float.parseFloat(prop.getProperty("version"));
    +410                             final float currentVersion = Float.parseFloat(CveDB.DB_SCHEMA_VERSION);
    +411                             if (currentVersion > version) {
    +412                                 deleteAndRecreate = true;
    +413                             }
    +414                         } catch (NumberFormatException ex) {
    +415                             deleteAndRecreate = true;
    +416                         }
    +417                     }
    +418                     if (deleteAndRecreate) {
    +419                         Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.INFO, "The database version is old. Rebuilding the database.");
    +420                         is.close();
    +421                         //this is an old version of the lucene index - just delete it
    +422                         FileUtils.delete(f);
    +423 
    +424                         //this importer also updates the CPE index and it is also using an old version
    +425                         final Index cpeId = new Index();
    +426                         final File cpeDir = cpeId.getDataDirectory();
    +427                         FileUtils.delete(cpeDir);
    +428                         return currentlyPublished;
    +429                     }
    +430 
    +431                     final long lastUpdated = Long.parseLong(prop.getProperty(LAST_UPDATED_MODIFIED, "0"));
    +432                     final Date now = new Date();
    +433                     final int days = Settings.getInt(Settings.KEYS.CVE_MODIFIED_VALID_FOR_DAYS, 7);
    +434                     final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR, 2002);
    +435                     final int end = Calendar.getInstance().get(Calendar.YEAR);
    +436                     if (lastUpdated == currentlyPublished.get(MODIFIED).timestamp) {
    +437                         currentlyPublished.clear(); //we don't need to update anything.
    +438                     } else if (withinRange(lastUpdated, now.getTime(), days)) {
    +439                         currentlyPublished.get(MODIFIED).setNeedsUpdate(true);
    +440                         for (int i = start; i <= end; i++) {
    +441                             currentlyPublished.get(String.valueOf(i)).setNeedsUpdate(false);
    +442                         }
    +443                     } else { //we figure out which of the several XML files need to be downloaded.
    +444                         currentlyPublished.get(MODIFIED).setNeedsUpdate(false);
    +445                         for (int i = start; i <= end; i++) {
    +446                             final NvdCveUrl cve = currentlyPublished.get(String.valueOf(i));
    +447                             long currentTimestamp = 0;
    +448                             try {
    +449                                 currentTimestamp = Long.parseLong(prop.getProperty(LAST_UPDATED_BASE + String.valueOf(i), "0"));
    +450                             } catch (NumberFormatException ex) {
    +451                                 final String msg = String.format("Error parsing '%s' '%s' from nvdcve.lastupdated",
    +452                                         LAST_UPDATED_BASE, String.valueOf(i));
    +453                                 Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, msg, ex);
    +454                             }
    +455                             if (currentTimestamp == cve.getTimestamp()) {
    +456                                 cve.setNeedsUpdate(false); //they default to true.
    +457                             }
    +458                         }
    +459                     }
    +460                 } catch (FileNotFoundException ex) {
    +461                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +462                 } catch (IOException ex) {
    +463                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +464                 } catch (NumberFormatException ex) {
    +465                     Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +466                 } finally {
    +467                     if (is != null) {
    +468                         try {
    +469                             is.close();
    +470                         } catch (IOException ex) {
    +471                             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINEST, null, ex);
    +472                         }
    +473                     }
    +474                 }
    +475             }
    +476         }
    +477         return currentlyPublished;
    +478     }
    +479 
    +480     /**
    +481      * Determines if the epoch date is within the range specified of the
    +482      * compareTo epoch time. This takes the (compareTo-date)/1000/60/60/24 to
    +483      * get the number of days. If the calculated days is less then the range the
    +484      * date is considered valid.
    +485      *
    +486      * @param date the date to be checked.
    +487      * @param compareTo the date to compare to.
    +488      * @param range the range in days to be considered valid.
    +489      * @return whether or not the date is within the range.
    +490      */
    +491     private boolean withinRange(long date, long compareTo, int range) {
    +492         final double differenceInDays = (compareTo - date) / 1000.0 / 60.0 / 60.0 / 24.0;
    +493         return differenceInDays < range;
    +494     }
    +495 
    +496     /**
    +497      * Retrieves the timestamps from the NVD CVE meta data file.
    +498      *
    +499      * @return the timestamp from the currently published nvdcve downloads page
    +500      * @throws MalformedURLException thrown if the URL for the NVD CCE Meta data
    +501      * is incorrect.
    +502      * @throws DownloadFailedException thrown if there is an error downloading
    +503      * the nvd cve meta data file
    +504      * @throws InvalidDataException thrown if there is an exception parsing the
    +505      * timestamps
    +506      * @throws InvalidSettingException thrown if the settings are invalid
    +507      */
    +508     protected Map<String, NvdCveUrl> retrieveCurrentTimestampsFromWeb()
    +509             throws MalformedURLException, DownloadFailedException, InvalidDataException, InvalidSettingException {
    +510 
    +511         final Map<String, NvdCveUrl> map = new HashMap<String, NvdCveUrl>();
    +512         String retrieveUrl = Settings.getString(Settings.KEYS.CVE_MODIFIED_20_URL);
    +513 
    +514         NvdCveUrl item = new NvdCveUrl();
    +515         item.setNeedsUpdate(false); //the others default to true, to make life easier later this should default to false.
    +516         item.setId(MODIFIED);
    +517         item.setUrl(retrieveUrl);
    +518         item.setOldSchemaVersionUrl(Settings.getString(Settings.KEYS.CVE_MODIFIED_12_URL));
    +519 
    +520         item.timestamp = Downloader.getLastModified(new URL(retrieveUrl));
    +521         map.put(MODIFIED, item);
    +522 
    +523         final int start = Settings.getInt(Settings.KEYS.CVE_START_YEAR);
    +524         final int end = Calendar.getInstance().get(Calendar.YEAR);
    +525         final String baseUrl20 = Settings.getString(Settings.KEYS.CVE_SCHEMA_2_0);
    +526         final String baseUrl12 = Settings.getString(Settings.KEYS.CVE_SCHEMA_1_2);
    +527         for (int i = start; i <= end; i++) {
    +528             retrieveUrl = String.format(baseUrl20, i);
    +529             item = new NvdCveUrl();
    +530             item.setId(Integer.toString(i));
    +531             item.setUrl(retrieveUrl);
    +532             item.setOldSchemaVersionUrl(String.format(baseUrl12, i));
    +533             item.setTimestamp(Downloader.getLastModified(new URL(retrieveUrl)));
    +534             map.put(item.id, item);
    +535         }
    +536         return map;
    +537     }
    +538 
    +539     /**
    +540      * Method to double check that the "modified" nvdcve file is listed and has
    +541      * a timestamp in the last updated properties file.
    +542      *
    +543      * @param update a set of updated NvdCveUrl objects
    +544      */
    +545     private void ensureModifiedIsInLastUpdatedProperties(Map<String, NvdCveUrl> update) {
    +546         try {
    +547             writeLastUpdatedPropertyFile(update.get(MODIFIED));
    +548         } catch (UpdateException ex) {
    +549             Logger.getLogger(DatabaseUpdater.class.getName()).log(Level.FINE, null, ex);
    +550         }
    +551     }
    +552 
    +553     /**
    +554      * A pojo that contains the Url and timestamp of the current NvdCve XML
    +555      * files.
    +556      */
    +557     protected static class NvdCveUrl {
    +558 
    +559         /**
    +560          * an id.
    +561          */
    +562         private String id;
    +563 
    +564         /**
    +565          * Get the value of id.
    +566          *
    +567          * @return the value of id
    +568          */
    +569         public String getId() {
    +570             return id;
    +571         }
    +572 
    +573         /**
    +574          * Set the value of id.
    +575          *
    +576          * @param id new value of id
    +577          */
    +578         public void setId(String id) {
    +579             this.id = id;
    +580         }
    +581         /**
    +582          * a url.
    +583          */
    +584         private String url;
    +585 
    +586         /**
    +587          * Get the value of url.
    +588          *
    +589          * @return the value of url
    +590          */
    +591         public String getUrl() {
    +592             return url;
    +593         }
    +594 
    +595         /**
    +596          * Set the value of url.
    +597          *
    +598          * @param url new value of url
    +599          */
    +600         public void setUrl(String url) {
    +601             this.url = url;
    +602         }
    +603         /**
    +604          * The 1.2 schema URL.
    +605          */
    +606         private String oldSchemaVersionUrl;
    +607 
    +608         /**
    +609          * Get the value of oldSchemaVersionUrl.
    +610          *
    +611          * @return the value of oldSchemaVersionUrl
    +612          */
    +613         public String getOldSchemaVersionUrl() {
    +614             return oldSchemaVersionUrl;
    +615         }
    +616 
    +617         /**
    +618          * Set the value of oldSchemaVersionUrl.
    +619          *
    +620          * @param oldSchemaVersionUrl new value of oldSchemaVersionUrl
    +621          */
    +622         public void setOldSchemaVersionUrl(String oldSchemaVersionUrl) {
    +623             this.oldSchemaVersionUrl = oldSchemaVersionUrl;
    +624         }
    +625         /**
    +626          * a timestamp - epoch time.
    +627          */
    +628         private long timestamp;
    +629 
    +630         /**
    +631          * Get the value of timestamp - epoch time.
    +632          *
    +633          * @return the value of timestamp - epoch time
    +634          */
    +635         public long getTimestamp() {
    +636             return timestamp;
    +637         }
    +638 
    +639         /**
    +640          * Set the value of timestamp - epoch time.
    +641          *
    +642          * @param timestamp new value of timestamp - epoch time
    +643          */
    +644         public void setTimestamp(long timestamp) {
    +645             this.timestamp = timestamp;
    +646         }
    +647         /**
    +648          * indicates whether or not this item should be updated.
    +649          */
    +650         private boolean needsUpdate = true;
    +651 
    +652         /**
    +653          * Get the value of needsUpdate.
    +654          *
    +655          * @return the value of needsUpdate
    +656          */
    +657         public boolean getNeedsUpdate() {
    +658             return needsUpdate;
    +659         }
    +660 
    +661         /**
    +662          * Set the value of needsUpdate.
    +663          *
    +664          * @param needsUpdate new value of needsUpdate
    +665          */
    +666         public void setNeedsUpdate(boolean needsUpdate) {
    +667             this.needsUpdate = needsUpdate;
    +668         }
    +669     }
    +670     //</editor-fold>
    +671 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/InvalidDataException.html new file mode 100644 index 000000000..1e40f881f --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/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.xml;
    +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/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve12Handler.html new file mode 100644 index 000000000..5acc2168b --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/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.xml;
    +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/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html new file mode 100644 index 000000000..7de855ad4 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/NvdCve20Handler.html @@ -0,0 +1,528 @@ + + + + +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.xml;
    +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.data.cpe.Index;
    +28  import org.owasp.dependencycheck.data.nvdcve.CveDB;
    +29  import org.owasp.dependencycheck.data.nvdcve.DatabaseException;
    +30  import org.owasp.dependencycheck.dependency.Reference;
    +31  import org.owasp.dependencycheck.dependency.Vulnerability;
    +32  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +33  import org.xml.sax.Attributes;
    +34  import org.xml.sax.SAXException;
    +35  import org.xml.sax.SAXNotSupportedException;
    +36  import org.xml.sax.helpers.DefaultHandler;
    +37  
    +38  /**
    +39   * A SAX Handler that will parse the NVD CVE XML (schema version 2.0).
    +40   *
    +41   * @author Jeremy Long (jeremy.long@owasp.org)
    +42   */
    +43  public class NvdCve20Handler extends DefaultHandler {
    +44  
    +45      /**
    +46       * the current supported schema version.
    +47       */
    +48      private static final String CURRENT_SCHEMA_VERSION = "2.0";
    +49      /**
    +50       * the current element.
    +51       */
    +52      private final Element current = new Element();
    +53      /**
    +54       * the text of the node.
    +55       */
    +56      private StringBuilder nodeText;
    +57      /**
    +58       * the vulnerability.
    +59       */
    +60      private Vulnerability vulnerability;
    +61      /**
    +62       * a reference for the cve.
    +63       */
    +64      private Reference reference;
    +65      /**
    +66       * flag indicating whether the application has a cpe.
    +67       */
    +68      private boolean hasApplicationCpe = false;
    +69      /**
    +70       * The total number of entries parsed.
    +71       */
    +72      private int totalNumberOfEntries;
    +73  
    +74      /**
    +75       * Get the value of totalNumberOfEntries.
    +76       *
    +77       * @return the value of totalNumberOfEntries
    +78       */
    +79      public int getTotalNumberOfEntries() {
    +80          return totalNumberOfEntries;
    +81      }
    +82      /**
    +83       * The total number of application entries parsed.
    +84       */
    +85      private int totalNumberOfApplicationEntries;
    +86  
    +87      /**
    +88       * Get the value of totalNumberOfApplicationEntries.
    +89       *
    +90       * @return the value of totalNumberOfApplicationEntries
    +91       */
    +92      public int getTotalNumberOfApplicationEntries() {
    +93          return totalNumberOfApplicationEntries;
    +94      }
    +95  
    +96      @Override
    +97      public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
    +98          current.setNode(qName);
    +99          if (current.isEntryNode()) {
    +100             hasApplicationCpe = false;
    +101             vulnerability = new Vulnerability();
    +102             vulnerability.setName(attributes.getValue("id"));
    +103         } else if (current.isVulnProductNode()) {
    +104             nodeText = new StringBuilder(100);
    +105         } else if (current.isVulnReferencesNode()) {
    +106             final String lang = attributes.getValue("xml:lang");
    +107             if ("en".equals(lang)) {
    +108                 reference = new Reference();
    +109             } else {
    +110                 reference = null;
    +111             }
    +112         } else if (reference != null && current.isVulnReferenceNode()) {
    +113             reference.setUrl(attributes.getValue("href"));
    +114             nodeText = new StringBuilder(130);
    +115         } else if (reference != null && current.isVulnSourceNode()) {
    +116             nodeText = new StringBuilder(30);
    +117         } else if (current.isVulnSummaryNode()) {
    +118             nodeText = new StringBuilder(500);
    +119         } else if (current.isNVDNode()) {
    +120             final String nvdVer = attributes.getValue("nvd_xml_version");
    +121             if (!CURRENT_SCHEMA_VERSION.equals(nvdVer)) {
    +122                 throw new SAXNotSupportedException("Schema version " + nvdVer + " is not supported");
    +123             }
    +124         } else if (current.isVulnCWENode()) {
    +125             vulnerability.setCwe(attributes.getValue("id"));
    +126         } else if (current.isCVSSScoreNode()) {
    +127             nodeText = new StringBuilder(5);
    +128         } else if (current.isCVSSAccessVectorNode()) {
    +129             nodeText = new StringBuilder(20);
    +130         } else if (current.isCVSSAccessComplexityNode()) {
    +131             nodeText = new StringBuilder(20);
    +132         } else if (current.isCVSSAuthenticationNode()) {
    +133             nodeText = new StringBuilder(20);
    +134         } else if (current.isCVSSAvailabilityImpactNode()) {
    +135             nodeText = new StringBuilder(20);
    +136         } else if (current.isCVSSConfidentialityImpactNode()) {
    +137             nodeText = new StringBuilder(20);
    +138         } else if (current.isCVSSIntegrityImpactNode()) {
    +139             nodeText = new StringBuilder(20);
    +140         }
    +141     }
    +142 
    +143     @Override
    +144     public void characters(char[] ch, int start, int length) throws SAXException {
    +145         if (nodeText != null) {
    +146             nodeText.append(ch, start, length);
    +147         }
    +148     }
    +149 
    +150     @Override
    +151     public void endElement(String uri, String localName, String qName) throws SAXException {
    +152         current.setNode(qName);
    +153         if (current.isEntryNode()) {
    +154             totalNumberOfEntries += 1;
    +155             if (hasApplicationCpe) {
    +156                 totalNumberOfApplicationEntries += 1;
    +157                 try {
    +158                     saveEntry(vulnerability);
    +159                 } catch (DatabaseException ex) {
    +160                     throw new SAXException(ex);
    +161                 } catch (CorruptIndexException ex) {
    +162                     throw new SAXException(ex);
    +163                 } catch (IOException ex) {
    +164                     throw new SAXException(ex);
    +165                 }
    +166             }
    +167             vulnerability = null;
    +168         } else if (current.isCVSSScoreNode()) {
    +169             try {
    +170                 final float score = Float.parseFloat(nodeText.toString());
    +171                 vulnerability.setCvssScore(score);
    +172             } catch (NumberFormatException ex) {
    +173                 Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.SEVERE, "Error parsing CVSS Score.");
    +174                 Logger.getLogger(NvdCve20Handler.class.getName()).log(Level.FINE, null, ex);
    +175             }
    +176             nodeText = null;
    +177         } else if (current.isCVSSAccessVectorNode()) {
    +178             vulnerability.setCvssAccessVector(nodeText.toString());
    +179             nodeText = null;
    +180         } else if (current.isCVSSAccessComplexityNode()) {
    +181             vulnerability.setCvssAccessComplexity(nodeText.toString());
    +182             nodeText = null;
    +183         } else if (current.isCVSSAuthenticationNode()) {
    +184             vulnerability.setCvssAuthentication(nodeText.toString());
    +185             nodeText = null;
    +186         } else if (current.isCVSSAvailabilityImpactNode()) {
    +187             vulnerability.setCvssAvailabilityImpact(nodeText.toString());
    +188             nodeText = null;
    +189         } else if (current.isCVSSConfidentialityImpactNode()) {
    +190             vulnerability.setCvssConfidentialityImpact(nodeText.toString());
    +191             nodeText = null;
    +192         } else if (current.isCVSSIntegrityImpactNode()) {
    +193             vulnerability.setCvssIntegrityImpact(nodeText.toString());
    +194             nodeText = null;
    +195         } else if (current.isVulnProductNode()) {
    +196             final String cpe = nodeText.toString();
    +197             if (cpe.startsWith("cpe:/a:")) {
    +198                 hasApplicationCpe = true;
    +199                 vulnerability.addVulnerableSoftware(cpe);
    +200             }
    +201             nodeText = null;
    +202         } else if (reference != null && current.isVulnReferencesNode()) {
    +203             vulnerability.addReference(reference);
    +204             reference = null;
    +205         } else if (reference != null && current.isVulnReferenceNode()) {
    +206             reference.setName(nodeText.toString());
    +207             nodeText = null;
    +208         } else if (reference != null && current.isVulnSourceNode()) {
    +209             reference.setSource(nodeText.toString());
    +210             nodeText = null;
    +211         } else if (current.isVulnSummaryNode()) {
    +212             vulnerability.setDescription(nodeText.toString());
    +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. This is a callback method
    +247      * called by the Sax Parser Handler
    +248      * {@link org.owasp.dependencycheck.data.nvdcve.xml.NvdCve20Handler}.
    +249      *
    +250      * @param vuln the vulnerability to store in the database
    +251      * @throws DatabaseException thrown if there is an error writing to the
    +252      * database
    +253      * @throws CorruptIndexException is thrown if the CPE Index is corrupt
    +254      * @throws IOException thrown if there is an IOException with the CPE Index
    +255      */
    +256     public void saveEntry(Vulnerability vuln) throws DatabaseException, CorruptIndexException, IOException {
    +257         if (cveDB == null) {
    +258             return;
    +259         }
    +260         final String cveName = vuln.getName();
    +261         if (prevVersionVulnMap.containsKey(cveName)) {
    +262             final List<VulnerableSoftware> vulnSoftware = prevVersionVulnMap.get(cveName);
    +263             for (VulnerableSoftware vs : vulnSoftware) {
    +264                 vuln.updateVulnerableSoftware(vs);
    +265             }
    +266         }
    +267         for (VulnerableSoftware vs : vuln.getVulnerableSoftware()) {
    +268             if (cpeIndex != null) {
    +269                 cpeIndex.saveEntry(vs);
    +270             }
    +271         }
    +272         cveDB.updateVulnerability(vuln);
    +273     }
    +274     /**
    +275      * the cpe index.
    +276      */
    +277     private Index cpeIndex;
    +278 
    +279     /**
    +280      * Sets the cpe index.
    +281      *
    +282      * @param index the CPE Lucene Index
    +283      */
    +284     void setCpeIndex(Index index) {
    +285         cpeIndex = index;
    +286     }
    +287 
    +288     // <editor-fold defaultstate="collapsed" desc="The Element Class that maintains state information about the current node">
    +289     /**
    +290      * A simple class to maintain information about the current element while
    +291      * parsing the NVD CVE XML.
    +292      */
    +293     protected static class Element {
    +294 
    +295         /**
    +296          * A node type in the NVD CVE Schema 2.0
    +297          */
    +298         public static final String NVD = "nvd";
    +299         /**
    +300          * A node type in the NVD CVE Schema 2.0
    +301          */
    +302         public static final String ENTRY = "entry";
    +303         /**
    +304          * A node type in the NVD CVE Schema 2.0
    +305          */
    +306         public static final String VULN_PRODUCT = "vuln:product";
    +307         /**
    +308          * A node type in the NVD CVE Schema 2.0
    +309          */
    +310         public static final String VULN_REFERENCES = "vuln:references";
    +311         /**
    +312          * A node type in the NVD CVE Schema 2.0
    +313          */
    +314         public static final String VULN_SOURCE = "vuln:source";
    +315         /**
    +316          * A node type in the NVD CVE Schema 2.0
    +317          */
    +318         public static final String VULN_REFERENCE = "vuln:reference";
    +319         /**
    +320          * A node type in the NVD CVE Schema 2.0
    +321          */
    +322         public static final String VULN_SUMMARY = "vuln:summary";
    +323         /**
    +324          * A node type in the NVD CVE Schema 2.0
    +325          */
    +326         public static final String VULN_CWE = "vuln:cwe";
    +327         /**
    +328          * A node type in the NVD CVE Schema 2.0
    +329          */
    +330         public static final String CVSS_SCORE = "cvss:score";
    +331         /**
    +332          * A node type in the NVD CVE Schema 2.0
    +333          */
    +334         public static final String CVSS_ACCESS_VECTOR = "cvss:access-vector";
    +335         /**
    +336          * A node type in the NVD CVE Schema 2.0
    +337          */
    +338         public static final String CVSS_ACCESS_COMPLEXITY = "cvss:access-complexity";
    +339         /**
    +340          * A node type in the NVD CVE Schema 2.0
    +341          */
    +342         public static final String CVSS_AUTHENTICATION = "cvss:authentication";
    +343         /**
    +344          * A node type in the NVD CVE Schema 2.0
    +345          */
    +346         public static final String CVSS_CONFIDENTIALITY_IMPACT = "cvss:confidentiality-impact";
    +347         /**
    +348          * A node type in the NVD CVE Schema 2.0
    +349          */
    +350         public static final String CVSS_INTEGRITY_IMPACT = "cvss:integrity-impact";
    +351         /**
    +352          * A node type in the NVD CVE Schema 2.0
    +353          */
    +354         public static final String CVSS_AVAILABILITY_IMPACT = "cvss:availability-impact";
    +355         /**
    +356          * The current node.
    +357          */
    +358         private String node;
    +359 
    +360         /**
    +361          * Gets the value of node.
    +362          *
    +363          * @return the value of node
    +364          */
    +365         public String getNode() {
    +366             return this.node;
    +367         }
    +368 
    +369         /**
    +370          * Sets the value of node.
    +371          *
    +372          * @param node new value of node
    +373          */
    +374         public void setNode(String node) {
    +375             this.node = node;
    +376         }
    +377 
    +378         /**
    +379          * Checks if the handler is at the NVD node.
    +380          *
    +381          * @return true or false
    +382          */
    +383         public boolean isNVDNode() {
    +384             return NVD.equals(node);
    +385         }
    +386 
    +387         /**
    +388          * Checks if the handler is at the ENTRY node.
    +389          *
    +390          * @return true or false
    +391          */
    +392         public boolean isEntryNode() {
    +393             return ENTRY.equals(node);
    +394         }
    +395 
    +396         /**
    +397          * Checks if the handler is at the VULN_PRODUCT node.
    +398          *
    +399          * @return true or false
    +400          */
    +401         public boolean isVulnProductNode() {
    +402             return VULN_PRODUCT.equals(node);
    +403         }
    +404 
    +405         /**
    +406          * Checks if the handler is at the REFERENCES node.
    +407          *
    +408          * @return true or false
    +409          */
    +410         public boolean isVulnReferencesNode() {
    +411             return VULN_REFERENCES.equals(node);
    +412         }
    +413 
    +414         /**
    +415          * Checks if the handler is at the REFERENCE node.
    +416          *
    +417          * @return true or false
    +418          */
    +419         public boolean isVulnReferenceNode() {
    +420             return VULN_REFERENCE.equals(node);
    +421         }
    +422 
    +423         /**
    +424          * Checks if the handler is at the VULN_SOURCE node.
    +425          *
    +426          * @return true or false
    +427          */
    +428         public boolean isVulnSourceNode() {
    +429             return VULN_SOURCE.equals(node);
    +430         }
    +431 
    +432         /**
    +433          * Checks if the handler is at the VULN_SUMMARY node.
    +434          *
    +435          * @return true or false
    +436          */
    +437         public boolean isVulnSummaryNode() {
    +438             return VULN_SUMMARY.equals(node);
    +439         }
    +440 
    +441         /**
    +442          * Checks if the handler is at the VULN_CWE node.
    +443          *
    +444          * @return true or false
    +445          */
    +446         public boolean isVulnCWENode() {
    +447             return VULN_CWE.equals(node);
    +448         }
    +449 
    +450         /**
    +451          * Checks if the handler is at the CVSS_SCORE node.
    +452          *
    +453          * @return true or false
    +454          */
    +455         public boolean isCVSSScoreNode() {
    +456             return CVSS_SCORE.equals(node);
    +457         }
    +458 
    +459         /**
    +460          * Checks if the handler is at the CVSS_ACCESS_VECTOR node.
    +461          *
    +462          * @return true or false
    +463          */
    +464         public boolean isCVSSAccessVectorNode() {
    +465             return CVSS_ACCESS_VECTOR.equals(node);
    +466         }
    +467 
    +468         /**
    +469          * Checks if the handler is at the CVSS_ACCESS_COMPLEXITY node.
    +470          *
    +471          * @return true or false
    +472          */
    +473         public boolean isCVSSAccessComplexityNode() {
    +474             return CVSS_ACCESS_COMPLEXITY.equals(node);
    +475         }
    +476 
    +477         /**
    +478          * Checks if the handler is at the CVSS_AUTHENTICATION node.
    +479          *
    +480          * @return true or false
    +481          */
    +482         public boolean isCVSSAuthenticationNode() {
    +483             return CVSS_AUTHENTICATION.equals(node);
    +484         }
    +485 
    +486         /**
    +487          * Checks if the handler is at the CVSS_CONFIDENTIALITY_IMPACT node.
    +488          *
    +489          * @return true or false
    +490          */
    +491         public boolean isCVSSConfidentialityImpactNode() {
    +492             return CVSS_CONFIDENTIALITY_IMPACT.equals(node);
    +493         }
    +494 
    +495         /**
    +496          * Checks if the handler is at the CVSS_INTEGRITY_IMPACT node.
    +497          *
    +498          * @return true or false
    +499          */
    +500         public boolean isCVSSIntegrityImpactNode() {
    +501             return CVSS_INTEGRITY_IMPACT.equals(node);
    +502         }
    +503 
    +504         /**
    +505          * Checks if the handler is at the CVSS_AVAILABILITY_IMPACT node.
    +506          *
    +507          * @return true or false
    +508          */
    +509         public boolean isCVSSAvailabilityImpactNode() {
    +510             return CVSS_AVAILABILITY_IMPACT.equals(node);
    +511         }
    +512     }
    +513     // </editor-fold>
    +514 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html new file mode 100644 index 000000000..6e1b108ef --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-frame.html @@ -0,0 +1,39 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve.xml + + + + +

    + org.owasp.dependencycheck.data.nvdcve.xml +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html new file mode 100644 index 000000000..8c39c8330 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/nvdcve/xml/package-summary.html @@ -0,0 +1,92 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data.nvdcve.xml + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data.nvdcve.xml

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + DatabaseUpdater +
    + Element +
    + InvalidDataException +
    + NvdCve12Handler +
    + NvdCve20Handler +
    + NvdCveUrl +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html new file mode 100644 index 000000000..66a5a3ccb --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-frame.html @@ -0,0 +1,30 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data + + + + +

    + org.owasp.dependencycheck.data +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html new file mode 100644 index 000000000..d9eaf1f23 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/data/package-summary.html @@ -0,0 +1,77 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.data + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.data

    + + + + + + + + + + + + + + + + + + +
    Class Summary
    + CachedWebDataSource +
    + UpdateException +
    + UpdateService +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Dependency.html new file mode 100644 index 000000000..70f0f6759 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Evidence.html new file mode 100644 index 000000000..83d7f7213 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/EvidenceCollection.html new file mode 100644 index 000000000..b7ad19d84 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Identifier.html new file mode 100644 index 000000000..71172e3a4 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Reference.html new file mode 100644 index 000000000..46248ed3b --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/Vulnerability.html new file mode 100644 index 000000000..35e66d2f8 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerabilityComparator.html new file mode 100644 index 000000000..6d4708fd5 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/VulnerableSoftware.html new file mode 100644 index 000000000..f08d602b1 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html new file mode 100644 index 000000000..d742403cd --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-frame.html @@ -0,0 +1,48 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.dependency + + + + +

    + org.owasp.dependencycheck.dependency +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html new file mode 100644 index 000000000..cffaab572 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/dependency/package-summary.html @@ -0,0 +1,107 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/MavenNamespaceFilter.html new file mode 100644 index 000000000..ad1872895 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Activation.html new file mode 100644 index 000000000..22346274d --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationFile.html new file mode 100644 index 000000000..f45d41234 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationOS.html new file mode 100644 index 000000000..02f9e8e9b --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ActivationProperty.html new file mode 100644 index 000000000..7435bb0cb --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Build.html new file mode 100644 index 000000000..d47013cf3 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/BuildBase.html new file mode 100644 index 000000000..a40f9ef9e --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/CiManagement.html new file mode 100644 index 000000000..0a12e851a --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Contributor.html new file mode 100644 index 000000000..93b6046c9 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Dependency.html new file mode 100644 index 000000000..8dec30227 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DependencyManagement.html new file mode 100644 index 000000000..49afb301c --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DeploymentRepository.html new file mode 100644 index 000000000..ad51b2f0b --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Developer.html new file mode 100644 index 000000000..40f94bcd7 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/DistributionManagement.html new file mode 100644 index 000000000..a664b810d --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Exclusion.html new file mode 100644 index 000000000..49e6181e9 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Extension.html new file mode 100644 index 000000000..2cf26f756 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/IssueManagement.html new file mode 100644 index 000000000..348cbaa69 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/License.html new file mode 100644 index 000000000..42e2f40f0 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/MailingList.html new file mode 100644 index 000000000..555a01790 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Model.html new file mode 100644 index 000000000..8fea69dd8 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Notifier.html new file mode 100644 index 000000000..c58f63cfa --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ObjectFactory.html new file mode 100644 index 000000000..2f06ef27e --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Organization.html new file mode 100644 index 000000000..b449f9b38 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Parent.html new file mode 100644 index 000000000..cbbd506f8 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Plugin.html new file mode 100644 index 000000000..422c8f2b4 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginExecution.html new file mode 100644 index 000000000..c988ec752 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/PluginManagement.html new file mode 100644 index 000000000..ea38027b9 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Prerequisites.html new file mode 100644 index 000000000..b0d3fd7d9 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Profile.html new file mode 100644 index 000000000..3efad59ad --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Relocation.html new file mode 100644 index 000000000..59068624f --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportPlugin.html new file mode 100644 index 000000000..53b8c0ace --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/ReportSet.html new file mode 100644 index 000000000..f0aa40d26 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Reporting.html new file mode 100644 index 000000000..83dd9b985 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Repository.html new file mode 100644 index 000000000..a72a7a3ba --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/RepositoryPolicy.html new file mode 100644 index 000000000..35c75f552 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Resource.html new file mode 100644 index 000000000..a772d6065 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Scm.html new file mode 100644 index 000000000..769062ac2 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/Site.html new file mode 100644 index 000000000..1a149a092 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html new file mode 100644 index 000000000..b55f261ac --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-frame.html @@ -0,0 +1,210 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.jaxb.pom.generated + + + + +

    + org.owasp.dependencycheck.jaxb.pom.generated +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html new file mode 100644 index 000000000..d5b742f2e --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/generated/package-summary.html @@ -0,0 +1,377 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html new file mode 100644 index 000000000..ab12f0ddd --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.jaxb.pom + + + + +

    + org.owasp.dependencycheck.jaxb.pom +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html new file mode 100644 index 000000000..d53bf6ea7 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/jaxb/pom/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html new file mode 100644 index 000000000..1cbb8d411 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/package-frame.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck + + + + +

    + org.owasp.dependencycheck +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html new file mode 100644 index 000000000..2c49ba712 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/package-summary.html @@ -0,0 +1,67 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/ReportGenerator.html new file mode 100644 index 000000000..0ef48afb5 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/VelocityLoggerRedirect.html new file mode 100644 index 000000000..c8b09ded2 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html new file mode 100644 index 000000000..b0a5ce443 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-frame.html @@ -0,0 +1,30 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.reporting + + + + +

    + org.owasp.dependencycheck.reporting +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html new file mode 100644 index 000000000..05e2d273f --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/reporting/package-summary.html @@ -0,0 +1,77 @@ + + + + + + dependency-check-core 1.0.1 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/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Checksum.html new file mode 100644 index 000000000..9f59ca6bb --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersion.html new file mode 100644 index 000000000..9a220f6a4 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/DependencyVersionUtil.html new file mode 100644 index 000000000..3ee16546c --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/DownloadFailedException.html new file mode 100644 index 000000000..76a3e462c --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html new file mode 100644 index 000000000..7d575880a --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Downloader.html @@ -0,0 +1,247 @@ + + + + +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.HttpURLConnection;
    +27  import java.net.InetSocketAddress;
    +28  import java.net.Proxy;
    +29  import java.net.SocketAddress;
    +30  import java.net.URL;
    +31  import java.util.logging.Level;
    +32  import java.util.logging.Logger;
    +33  import java.util.zip.GZIPInputStream;
    +34  import java.util.zip.InflaterInputStream;
    +35  
    +36  /**
    +37   * A utility to download files from the Internet.
    +38   *
    +39   * @author Jeremy Long (jeremy.long@owasp.org)
    +40   */
    +41  public final class Downloader {
    +42  
    +43      /**
    +44       * Private constructor for utility class.
    +45       */
    +46      private Downloader() {
    +47      }
    +48  
    +49      /**
    +50       * Retrieves a file from a given URL and saves it to the outputPath.
    +51       *
    +52       * @param url the URL of the file to download.
    +53       * @param outputPath the path to the save the file to.
    +54       * @throws DownloadFailedException is thrown if there is an error
    +55       * downloading the file.
    +56       */
    +57      public static void fetchFile(URL url, String outputPath) throws DownloadFailedException {
    +58          fetchFile(url, outputPath, false);
    +59      }
    +60  
    +61      /**
    +62       * Retrieves a file from a given URL and saves it to the outputPath.
    +63       *
    +64       * @param url the URL of the file to download.
    +65       * @param outputPath the path to the save the file to.
    +66       * @param unzip true/false indicating that the file being retrieved is
    +67       * gzipped and if true, should be uncompressed before writing to the file.
    +68       * @throws DownloadFailedException is thrown if there is an error
    +69       * downloading the file.
    +70       */
    +71      public static void fetchFile(URL url, String outputPath, boolean unzip) throws DownloadFailedException {
    +72          final File f = new File(outputPath);
    +73          fetchFile(url, f, unzip);
    +74      }
    +75  
    +76      /**
    +77       * Retrieves a file from a given URL and saves it to the outputPath.
    +78       *
    +79       * @param url the URL of the file to download.
    +80       * @param outputPath the path to the save the file to.
    +81       * @throws DownloadFailedException is thrown if there is an error
    +82       * downloading the file.
    +83       */
    +84      public static void fetchFile(URL url, File outputPath) throws DownloadFailedException {
    +85          fetchFile(url, outputPath, false);
    +86      }
    +87  
    +88      /**
    +89       * Retrieves a file from a given URL and saves it to the outputPath.
    +90       *
    +91       * @param url the URL of the file to download.
    +92       * @param outputPath the path to the save the file to.
    +93       * @param unzip true/false indicating that the file being retrieved is
    +94       * gzipped and if true, should be uncompressed before writing to the file.
    +95       * @throws DownloadFailedException is thrown if there is an error
    +96       * downloading the file.
    +97       */
    +98      public static void fetchFile(URL url, File outputPath, boolean unzip) throws DownloadFailedException {
    +99          HttpURLConnection conn = null;
    +100         try {
    +101             conn = Downloader.getConnection(url);
    +102             conn.setRequestProperty("Accept-Encoding", "gzip, deflate");
    +103             conn.connect();
    +104         } catch (IOException ex) {
    +105             try {
    +106                 if (conn != null) {
    +107                     conn.disconnect();
    +108                 }
    +109             } finally {
    +110                 conn = null;
    +111             }
    +112             throw new DownloadFailedException("Error downloading file.", ex);
    +113         }
    +114         final String encoding = conn.getContentEncoding();
    +115 
    +116         BufferedOutputStream writer = null;
    +117         InputStream reader = null;
    +118         try {
    +119             if (unzip || (encoding != null && "gzip".equalsIgnoreCase(encoding))) {
    +120                 reader = new GZIPInputStream(conn.getInputStream());
    +121             } else if (encoding != null && "deflate".equalsIgnoreCase(encoding)) {
    +122                 reader = new InflaterInputStream(conn.getInputStream());
    +123             } else {
    +124                 reader = conn.getInputStream();
    +125             }
    +126 
    +127             writer = new BufferedOutputStream(new FileOutputStream(outputPath));
    +128             final byte[] buffer = new byte[4096];
    +129             int bytesRead;
    +130             while ((bytesRead = reader.read(buffer)) > 0) {
    +131                 writer.write(buffer, 0, bytesRead);
    +132             }
    +133         } catch (Exception ex) {
    +134             throw new DownloadFailedException("Error saving downloaded file.", ex);
    +135         } finally {
    +136             if (writer != null) {
    +137                 try {
    +138                     writer.close();
    +139                     writer = null;
    +140                 } catch (Exception ex) {
    +141                     Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
    +142                             "Error closing the writer in Downloader.", ex);
    +143                 }
    +144             }
    +145             if (reader != null) {
    +146                 try {
    +147                     reader.close();
    +148                     reader = null;
    +149                 } catch (Exception ex) {
    +150 
    +151                     Logger.getLogger(Downloader.class.getName()).log(Level.FINEST,
    +152                             "Error closing the reader in Downloader.", ex);
    +153                 }
    +154             }
    +155             try {
    +156                 conn.disconnect();
    +157             } finally {
    +158                 conn = null;
    +159             }
    +160         }
    +161     }
    +162 
    +163     /**
    +164      * Makes an HTTP Head request to retrieve the last modified date of the
    +165      * given URL.
    +166      *
    +167      * @param url the URL to retrieve the timestamp from
    +168      * @return an epoch timestamp
    +169      * @throws DownloadFailedException is thrown if an exception occurs making
    +170      * the HTTP request
    +171      */
    +172     public static long getLastModified(URL url) throws DownloadFailedException {
    +173         HttpURLConnection conn = null;
    +174         long timestamp = 0;
    +175         try {
    +176             conn = Downloader.getConnection(url);
    +177             conn.setRequestMethod("HEAD");
    +178             conn.connect();
    +179             timestamp = conn.getLastModified();
    +180         } catch (Exception ex) {
    +181             throw new DownloadFailedException("Error making HTTP HEAD request.", ex);
    +182         } finally {
    +183             if (conn != null) {
    +184                 try {
    +185                     conn.disconnect();
    +186                 } finally {
    +187                     conn = null;
    +188                 }
    +189             }
    +190         }
    +191         return timestamp;
    +192     }
    +193 
    +194     /**
    +195      * Utility method to get an HttpURLConnection. If the app is configured to
    +196      * use a proxy this method will retrieve the proxy settings and use them
    +197      * when setting up the connection.
    +198      *
    +199      * @param url the url to connect to
    +200      * @return an HttpURLConnection
    +201      * @throws DownloadFailedException thrown if there is an exception
    +202      */
    +203     private static HttpURLConnection getConnection(URL url) throws DownloadFailedException {
    +204         HttpURLConnection conn = null;
    +205         Proxy proxy = null;
    +206         final String proxyUrl = Settings.getString(Settings.KEYS.PROXY_URL);
    +207         try {
    +208             if (proxyUrl != null) {
    +209                 final int proxyPort = Settings.getInt(Settings.KEYS.PROXY_PORT);
    +210                 final SocketAddress addr = new InetSocketAddress(proxyUrl, proxyPort);
    +211                 proxy = new Proxy(Proxy.Type.HTTP, addr);
    +212                 conn = (HttpURLConnection) url.openConnection(proxy);
    +213             } else {
    +214                 conn = (HttpURLConnection) url.openConnection();
    +215             }
    +216             //added a default timeout of 20000
    +217             //if (Settings.getString(Settings.KEYS.CONNECTION_TIMEOUT) != null) {
    +218             final int timeout = Settings.getInt(Settings.KEYS.CONNECTION_TIMEOUT, 60000);
    +219             conn.setConnectTimeout(timeout);
    +220             //}
    +221         } catch (IOException ex) {
    +222             if (conn != null) {
    +223                 try {
    +224                     conn.disconnect();
    +225                 } finally {
    +226                     conn = null;
    +227                 }
    +228             }
    +229             throw new DownloadFailedException("Error getting connection.", ex);
    +230         }
    +231         return conn;
    +232     }
    +233 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html new file mode 100644 index 000000000..670c84d89 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/FileUtils.html @@ -0,0 +1,131 @@ + + + + +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.File;
    +22  import java.io.FileNotFoundException;
    +23  import java.io.IOException;
    +24  import java.io.UnsupportedEncodingException;
    +25  import java.net.URLDecoder;
    +26  
    +27  /**
    +28   * A collection of utilities for processing information about files.
    +29   *
    +30   * @author Jeremy Long (jeremy.long@owasp.org)
    +31   */
    +32  public final class FileUtils {
    +33  
    +34      /**
    +35       * Private constructor for a utility class.
    +36       */
    +37      private FileUtils() {
    +38      }
    +39  
    +40      /**
    +41       * Returns the (lowercase) file extension for a specified file.
    +42       *
    +43       * @param fileName the file name to retrieve the file extension from.
    +44       * @return the file extension.
    +45       */
    +46      public static String getFileExtension(String fileName) {
    +47          String ret = null;
    +48          final int pos = fileName.lastIndexOf(".");
    +49          if (pos >= 0) {
    +50              ret = fileName.substring(pos + 1, fileName.length()).toLowerCase();
    +51          }
    +52          return ret;
    +53      }
    +54  
    +55      /**
    +56       * Deletes a file. If the File is a directory it will recursively delete the
    +57       * contents.
    +58       *
    +59       * @param file the File to delete
    +60       * @throws IOException is thrown if the file could not be deleted
    +61       */
    +62      public static void delete(File file) throws IOException {
    +63          if (file.isDirectory()) {
    +64              for (File c : file.listFiles()) {
    +65                  delete(c);
    +66              }
    +67          }
    +68          if (!file.delete()) {
    +69              throw new FileNotFoundException("Failed to delete file: " + file);
    +70          }
    +71      }
    +72  
    +73      /**
    +74       * Returns the data directory. If a path was specified in
    +75       * dependencycheck.properties or was specified using the Settings object,
    +76       * and the path exists, that path will be returned as a File object. If it
    +77       * does not exist, then a File object will be created based on the file
    +78       * location of the JAR containing the specified class.
    +79       *
    +80       * @param configuredFilePath the configured relative or absolute path
    +81       * @param clazz the class whos path will be resolved
    +82       * @return a File object
    +83       * @throws IOException is thrown if the path could not be decoded
    +84       * @deprecated This method should no longer be used. See the implementation
    +85       * in dependency-check-cli/App.java to see how the data directory should be
    +86       * set.
    +87       */
    +88      @java.lang.Deprecated
    +89      public static File getDataDirectory(String configuredFilePath, Class clazz) throws IOException {
    +90          final File file = new File(configuredFilePath);
    +91          if (file.isDirectory() && file.canWrite()) {
    +92              return new File(file.getCanonicalPath());
    +93          } else {
    +94              final File exePath = getPathToJar(clazz);
    +95              return new File(exePath, configuredFilePath);
    +96          }
    +97      }
    +98  
    +99      /**
    +100      * Retrieves the physical path to the parent directory containing the
    +101      * provided class. For example, if a JAR file contained a class
    +102      * org.something.clazz this method would return the parent directory of the
    +103      * JAR file.
    +104      *
    +105      * @param clazz the class to determine the parent directory of
    +106      * @return the parent directory of the file containing the specified class.
    +107      * @throws UnsupportedEncodingException thrown if UTF-8 is not supported.
    +108      * @deprecated this should no longer be used.
    +109      */
    +110     @java.lang.Deprecated
    +111     public static File getPathToJar(Class clazz) throws UnsupportedEncodingException {
    +112         final String filePath = clazz.getProtectionDomain().getCodeSource().getLocation().getPath();
    +113         final String decodedPath = URLDecoder.decode(filePath, "UTF-8");
    +114         final File jarPath = new File(decodedPath);
    +115         return jarPath.getParentFile();
    +116     }
    +117 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Filter.html new file mode 100644 index 000000000..0972eccec --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/InvalidSettingException.html new file mode 100644 index 000000000..d4c9cb530 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/NonClosingStream.html new file mode 100644 index 000000000..837715ea1 --- /dev/null +++ b/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/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html new file mode 100644 index 000000000..6edcd78b2 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/Settings.html @@ -0,0 +1,429 @@ + + + + +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 properties key for the path where the CPE Lucene Index will be
    +72           * stored.
    +73           */
    +74          public static final String CPE_DATA_DIRECTORY = "data.cpe";
    +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 the CPE.
    +82           */
    +83          public static final String CPE_URL = "cpe.url";
    +84          /**
    +85           * The properties key for the URL to the CPE.
    +86           */
    +87          public static final String CPE_META_URL = "cpe.meta.url";
    +88          /**
    +89           * The properties key for the URL to retrieve the "meta" data from about
    +90           * the CVE entries.
    +91           */
    +92          public static final String CVE_META_URL = "cve.url.meta";
    +93          /**
    +94           * The properties key for the URL to retrieve the recently modified and
    +95           * added CVE entries (last 8 days) using the 2.0 schema.
    +96           */
    +97          public static final String CVE_MODIFIED_20_URL = "cve.url-2.0.modified";
    +98          /**
    +99           * The properties key for the URL to retrieve the recently modified and
    +100          * added CVE entries (last 8 days) using the 1.2 schema.
    +101          */
    +102         public static final String CVE_MODIFIED_12_URL = "cve.url-1.2.modified";
    +103         /**
    +104          * The properties key for the URL to retrieve the recently modified and
    +105          * added CVE entries (last 8 days).
    +106          */
    +107         public static final String CVE_MODIFIED_VALID_FOR_DAYS = "cve.url.modified.validfordays";
    +108         /**
    +109          * The properties key for the telling us how many cvr.url.* URLs exists.
    +110          * This is used in combination with CVE_BASE_URL to be able to retrieve
    +111          * the URLs for all of the files that make up the NVD CVE listing.
    +112          */
    +113         public static final String CVE_START_YEAR = "cve.startyear";
    +114         /**
    +115          * The properties key for the CVE schema version 1.2.
    +116          */
    +117         public static final String CVE_SCHEMA_1_2 = "cve.url-1.2.base";
    +118         /**
    +119          * The properties key for the CVE schema version 2.0.
    +120          */
    +121         public static final String CVE_SCHEMA_2_0 = "cve.url-2.0.base";
    +122         /**
    +123          * The properties key for the proxy url.
    +124          */
    +125         public static final String PROXY_URL = "proxy.url";
    +126         /**
    +127          * The properties key for the proxy port - this must be an integer
    +128          * value.
    +129          */
    +130         public static final String PROXY_PORT = "proxy.port";
    +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     /**
    +141      * The properties file location.
    +142      */
    +143     private static final String PROPERTIES_FILE = "dependencycheck.properties";
    +144     /**
    +145      * The singleton instance variable.
    +146      */
    +147     private static final Settings INSTANCE = new Settings();
    +148     /**
    +149      * The properties.
    +150      */
    +151     private Properties props = null;
    +152 
    +153     /**
    +154      * Private constructor for the Settings class. This class loads the
    +155      * properties files.
    +156      */
    +157     private Settings() {
    +158         InputStream in = null;
    +159         props = new Properties();
    +160         try {
    +161             in = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +162             props.load(in);
    +163         } catch (IOException ex) {
    +164             Logger.getLogger(Settings.class.getName()).log(Level.SEVERE, "Unable to load default settings.");
    +165             Logger.getLogger(Settings.class.getName()).log(Level.FINE, null, ex);
    +166         } finally {
    +167             if (in != null) {
    +168                 try {
    +169                     in.close();
    +170                 } catch (IOException ex) {
    +171                     Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
    +172                 }
    +173             }
    +174         }
    +175     }
    +176 
    +177     /**
    +178      * Sets a property value.
    +179      *
    +180      * @param key the key for the property
    +181      * @param value the value for the property
    +182      */
    +183     public static void setString(String key, String value) {
    +184         INSTANCE.props.setProperty(key, value);
    +185     }
    +186 
    +187     /**
    +188      * Sets a property value.
    +189      *
    +190      * @param key the key for the property
    +191      * @param value the value for the property
    +192      */
    +193     public static void setBoolean(String key, boolean value) {
    +194         if (value) {
    +195             INSTANCE.props.setProperty(key, Boolean.TRUE.toString());
    +196         } else {
    +197             INSTANCE.props.setProperty(key, Boolean.FALSE.toString());
    +198         }
    +199     }
    +200 
    +201     /**
    +202      * Merges a new properties file into the current properties. This method
    +203      * allows for the loading of a user provided properties file.<br/><br/>
    +204      * Note: even if using this method - system properties will be loaded before
    +205      * properties loaded from files.
    +206      *
    +207      * @param filePath the path to the properties file to merge.
    +208      * @throws FileNotFoundException is thrown when the filePath points to a
    +209      * non-existent file
    +210      * @throws IOException is thrown when there is an exception loading/merging
    +211      * the properties
    +212      */
    +213     public static void mergeProperties(String filePath) throws FileNotFoundException, IOException {
    +214         final FileInputStream fis = new FileInputStream(filePath);
    +215         mergeProperties(fis);
    +216     }
    +217 
    +218     /**
    +219      * Merges a new properties file into the current properties. This method
    +220      * allows for the loading of a user provided properties file.<br/><br/>
    +221      * Note: even if using this method - system properties will be loaded before
    +222      * properties loaded from files.
    +223      *
    +224      * @param stream an Input Stream pointing at a properties file to merge
    +225      * @throws IOException is thrown when there is an exception loading/merging
    +226      * the properties
    +227      */
    +228     public static void mergeProperties(InputStream stream) throws IOException {
    +229         INSTANCE.props.load(stream);
    +230     }
    +231 
    +232     /**
    +233      * Returns a value from the properties file as a File object. If the value
    +234      * was specified as a system property or passed in via the -Dprop=value
    +235      * argument - this method will return the value from the system properties
    +236      * before the values in the contained configuration file.
    +237      *
    +238      * @param key the key to lookup within the properties file
    +239      * @param defaultValue the default value for the requested property
    +240      * @return the property from the properties file as a File object
    +241      */
    +242     public static File getFile(String key, String defaultValue) {
    +243         final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
    +244         final String str = getString(key, defaultValue);
    +245         if (baseDir != null) {
    +246             return new File(baseDir, str);
    +247         }
    +248         return new File(str);
    +249     }
    +250 
    +251     /**
    +252      * Returns a value from the properties file as a File object. If the value
    +253      * was specified as a system property or passed in via the -Dprop=value
    +254      * argument - this method will return the value from the system properties
    +255      * before the values in the contained configuration file.
    +256      *
    +257      * This method will also replace a leading "[JAR]\" sequence with the path
    +258      * to the folder containing the JAR file containing this class.
    +259      *
    +260      * @param key the key to lookup within the properties file
    +261      * @return the property from the properties file converted to a File object
    +262      * @throws IOException thrown if the file path to the JAR cannot be found
    +263      */
    +264     public static File getFile(String key) throws IOException {
    +265         final String file = getString(key);
    +266         final String baseDir = getString(Settings.KEYS.DATA_DIRECTORY);
    +267         if (baseDir != null) {
    +268             if (baseDir.startsWith("[JAR]/")) {
    +269                 final File jarPath = getJarPath();
    +270                 final File newBase = new File(jarPath.getCanonicalPath(), baseDir.substring(6));
    +271                 return new File(newBase, file);
    +272             }
    +273             return new File(baseDir, file);
    +274         }
    +275         return new File(file);
    +276     }
    +277 
    +278     /**
    +279      * Attempts to retrieve the folder containing the Jar file containing the
    +280      * Settings class.
    +281      *
    +282      * @return a File object
    +283      */
    +284     private static File getJarPath() {
    +285         final String jarPath = Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath();
    +286         String decodedPath = ".";
    +287         try {
    +288             decodedPath = URLDecoder.decode(jarPath, "UTF-8");
    +289         } catch (UnsupportedEncodingException ex) {
    +290             Logger.getLogger(Settings.class.getName()).log(Level.FINEST, null, ex);
    +291         }
    +292 
    +293         final File path = new File(decodedPath);
    +294         if (path.getName().toLowerCase().endsWith(".jar")) {
    +295             return path.getParentFile();
    +296         } else {
    +297             return new File(".");
    +298         }
    +299     }
    +300 
    +301     /**
    +302      * Returns a value from the properties file. If the value was specified as a
    +303      * system property or passed in via the -Dprop=value argument - this method
    +304      * will return the value from the system properties before the values in the
    +305      * contained configuration file.
    +306      *
    +307      * @param key the key to lookup within the properties file
    +308      * @param defaultValue the default value for the requested property
    +309      * @return the property from the properties file
    +310      */
    +311     public static String getString(String key, String defaultValue) {
    +312         final String str = System.getProperty(key, INSTANCE.props.getProperty(key, defaultValue));
    +313         return str;
    +314     }
    +315 
    +316     /**
    +317      * Returns a value from the properties file. If the value was specified as a
    +318      * system property or passed in via the -Dprop=value argument - this method
    +319      * will return the value from the system properties before the values in the
    +320      * contained configuration file.
    +321      *
    +322      * @param key the key to lookup within the properties file
    +323      * @return the property from the properties file
    +324      */
    +325     public static String getString(String key) {
    +326         return System.getProperty(key, INSTANCE.props.getProperty(key));
    +327     }
    +328 
    +329     /**
    +330      * Returns an int value from the properties file. If the value was specified
    +331      * as a system property or passed in via the -Dprop=value argument - this
    +332      * method will return the value from the system properties before the values
    +333      * in the contained configuration file.
    +334      *
    +335      * @param key the key to lookup within the properties file
    +336      * @return the property from the properties file
    +337      * @throws InvalidSettingException is thrown if there is an error retrieving
    +338      * the setting
    +339      */
    +340     public static int getInt(String key) throws InvalidSettingException {
    +341         int value;
    +342         try {
    +343             value = Integer.parseInt(Settings.getString(key));
    +344         } catch (NumberFormatException ex) {
    +345             throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
    +346         }
    +347         return value;
    +348     }
    +349 
    +350     /**
    +351      * Returns an int value from the properties file. If the value was specified
    +352      * as a system property or passed in via the -Dprop=value argument - this
    +353      * method will return the value from the system properties before the values
    +354      * in the contained configuration file.
    +355      *
    +356      * @param key the key to lookup within the properties file
    +357      * @param defaultValue the default value to return
    +358      * @return the property from the properties file or the defaultValue if the
    +359      * property does not exist or cannot be converted to an integer
    +360      */
    +361     public static int getInt(String key, int defaultValue) {
    +362         int value;
    +363         try {
    +364             value = Integer.parseInt(Settings.getString(key));
    +365         } catch (NumberFormatException ex) {
    +366             final String msg = String.format("Could not convert property '%s' to an int.", key);
    +367             Logger.getLogger(Settings.class.getName()).log(Level.FINEST, msg, ex);
    +368             value = defaultValue;
    +369         }
    +370         return value;
    +371     }
    +372 
    +373     /**
    +374      * Returns a long value from the properties file. If the value was specified
    +375      * as a system property or passed in via the -Dprop=value argument - this
    +376      * method will return the value from the system properties before the values
    +377      * in the contained configuration file.
    +378      *
    +379      * @param key the key to lookup within the properties file
    +380      * @return the property from the properties file
    +381      * @throws InvalidSettingException is thrown if there is an error retrieving
    +382      * the setting
    +383      */
    +384     public static long getLong(String key) throws InvalidSettingException {
    +385         long value;
    +386         try {
    +387             value = Long.parseLong(Settings.getString(key));
    +388         } catch (NumberFormatException ex) {
    +389             throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
    +390         }
    +391         return value;
    +392     }
    +393 
    +394     /**
    +395      * Returns a boolean value from the properties file. If the value was
    +396      * specified as a system property or passed in via the
    +397      * <code>-Dprop=value</code> argument this method will return the value from
    +398      * the system properties before the values in the contained configuration
    +399      * file.
    +400      *
    +401      * @param key the key to lookup within the properties file
    +402      * @return the property from the properties file
    +403      * @throws InvalidSettingException is thrown if there is an error retrieving
    +404      * the setting
    +405      */
    +406     public static boolean getBoolean(String key) throws InvalidSettingException {
    +407         boolean value;
    +408         try {
    +409             value = Boolean.parseBoolean(Settings.getString(key));
    +410         } catch (NumberFormatException ex) {
    +411             throw new InvalidSettingException("Could not convert property '" + key + "' to an int.", ex);
    +412         }
    +413         return value;
    +414     }
    +415 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html new file mode 100644 index 000000000..333b58321 --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/UrlStringUtils.html @@ -0,0 +1,118 @@ + + + + +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.List;
    +25  import java.util.regex.Pattern;
    +26  
    +27  /**
    +28   *
    +29   * @author Jeremy Long (jeremy.long@owasp.org)
    +30   */
    +31  public final class UrlStringUtils {
    +32  
    +33      /**
    +34       * Private constructor for a utility class.
    +35       */
    +36      private UrlStringUtils() {
    +37      }
    +38      /**
    +39       * A regular expression to test if a string contains a URL.
    +40       */
    +41      private static final Pattern CONTAINS_URL_TEST = Pattern.compile("^.*(ht|f)tps?://.*$", Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
    +42      /**
    +43       * A regular expression to test if a string is a URL.
    +44       */
    +45      private static final Pattern IS_URL_TEST = Pattern.compile("^(ht|f)tps?://.*", Pattern.CASE_INSENSITIVE);
    +46  
    +47      /**
    +48       * Tests if the text provided contains a URL. This is somewhat limited
    +49       * search in that it only looks for (ftp|http|https)://
    +50       *
    +51       * @param text the text to search
    +52       * @return true if the text contains a url, otherwise false
    +53       */
    +54      public static boolean containsUrl(String text) {
    +55          return CONTAINS_URL_TEST.matcher(text).matches();
    +56      }
    +57  
    +58      /**
    +59       * Tests if the given text is url.
    +60       *
    +61       * @param text the string to test
    +62       * @return returns true if the text is a url, otherwise false
    +63       */
    +64      public static boolean isUrl(String text) {
    +65          return IS_URL_TEST.matcher(text).matches();
    +66      }
    +67  
    +68      /**
    +69       * <p>Takes a URL, in String format, and adds the important parts of the URL
    +70       * to a list of strings.</p>
    +71       * <p>Example, given the following input:</p>
    +72       * <code>"https://www.somedomain.com/path1/path2/file.php?id=439"</code>
    +73       * <p>The function would return:</p>
    +74       * <code>{"somedomain", "path1", "path2", "file"}</code>
    +75       *
    +76       * @param text a URL
    +77       * @return importantParts a list of the important parts of the URL
    +78       * @throws MalformedURLException thrown if the URL is malformed
    +79       */
    +80      public static List<String> extractImportantUrlData(String text) throws MalformedURLException {
    +81          final ArrayList<String> importantParts = new ArrayList<String>();
    +82          final URL url = new URL(text);
    +83          final String[] domain = url.getHost().split("\\.");
    +84          //add the domain except www and the tld.
    +85          for (int i = 0; i < domain.length - 1; i++) {
    +86              final String sub = domain[i];
    +87              if (!"www".equalsIgnoreCase(sub)) {
    +88                  importantParts.add(sub);
    +89              }
    +90          }
    +91          final String document = url.getPath();
    +92          final String[] pathParts = document.split("[\\//]");
    +93          for (int i = 0; i < pathParts.length - 2; i++) {
    +94              if (!pathParts[i].isEmpty()) {
    +95                  importantParts.add(pathParts[i]);
    +96              }
    +97          }
    +98          if (pathParts.length > 0 && !pathParts[pathParts.length - 1].isEmpty()) {
    +99              final String fileNameNoExt = pathParts[pathParts.length - 1].replaceAll("\\..*{0,5}$", "");
    +100             importantParts.add(fileNameNoExt);
    +101         }
    +102         return importantParts;
    +103     }
    +104 }
    +
    +
    + + diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html new file mode 100644 index 000000000..7b3f12f3e --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-frame.html @@ -0,0 +1,60 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.utils + + + + +

    + org.owasp.dependencycheck.utils +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html new file mode 100644 index 000000000..068433eae --- /dev/null +++ b/dependency-check-core/xref/org/owasp/dependencycheck/utils/package-summary.html @@ -0,0 +1,127 @@ + + + + + + dependency-check-core 1.0.1 Reference Package org.owasp.dependencycheck.utils + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.utils

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Class Summary
    + Checksum +
    + DependencyVersion +
    + DependencyVersionUtil +
    + DownloadFailedException +
    + Downloader +
    + FileUtils +
    + Filter +
    + FilterIterator +
    + InvalidSettingException +
    + KEYS +
    + NonClosingStream +
    + Settings +
    + UrlStringUtils +
    + +
    + +
    +
    + +
    +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/overview-frame.html b/dependency-check-core/xref/overview-frame.html new file mode 100644 index 000000000..254a0f2c8 --- /dev/null +++ b/dependency-check-core/xref/overview-frame.html @@ -0,0 +1,61 @@ + + + + + + dependency-check-core 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-core/xref/overview-summary.html b/dependency-check-core/xref/overview-summary.html new file mode 100644 index 000000000..78dce9dac --- /dev/null +++ b/dependency-check-core/xref/overview-summary.html @@ -0,0 +1,124 @@ + + + + + + dependency-check-core 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-core 1.0.1 Reference

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck +
    + org.owasp.dependencycheck.analyzer +
    + 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.nvdcve.xml +
    + org.owasp.dependencycheck.dependency +
    + org.owasp.dependencycheck.jaxb.pom +
    + org.owasp.dependencycheck.jaxb.pom.generated +
    + org.owasp.dependencycheck.reporting +
    + org.owasp.dependencycheck.utils +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2012-2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-core/xref/stylesheet.css b/dependency-check-core/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/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/dependency-check-maven/apidocs/allclasses-frame.html b/dependency-check-maven/apidocs/allclasses-frame.html new file mode 100644 index 000000000..65657060d --- /dev/null +++ b/dependency-check-maven/apidocs/allclasses-frame.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (dependency-check-maven 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    DependencyCheckMojo +
    +HelpMojo +
    +
    + + + diff --git a/dependency-check-maven/apidocs/allclasses-noframe.html b/dependency-check-maven/apidocs/allclasses-noframe.html new file mode 100644 index 000000000..5a36995cf --- /dev/null +++ b/dependency-check-maven/apidocs/allclasses-noframe.html @@ -0,0 +1,34 @@ + + + + + + + +All Classes (dependency-check-maven 1.0.1 API) + + + + + + + + + + + +All Classes +
    + + + + + +
    DependencyCheckMojo +
    +HelpMojo +
    +
    + + + diff --git a/dependency-check-maven/apidocs/constant-values.html b/dependency-check-maven/apidocs/constant-values.html new file mode 100644 index 000000000..fc3430edf --- /dev/null +++ b/dependency-check-maven/apidocs/constant-values.html @@ -0,0 +1,173 @@ + + + + + + + +Constant Field Values (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Constant Field Values

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

    + + + + + + + + + + + + +
    org.owasp.dependencycheck.maven.DependencyCheckMojo
    +public static final StringTEST_SCOPE"test"
    + +

    + +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/deprecated-list.html b/dependency-check-maven/apidocs/deprecated-list.html new file mode 100644 index 000000000..e3ac723f9 --- /dev/null +++ b/dependency-check-maven/apidocs/deprecated-list.html @@ -0,0 +1,145 @@ + + + + + + + +Deprecated List (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Deprecated API

    +
    +
    +Contents
      +
    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/help-doc.html b/dependency-check-maven/apidocs/help-doc.html new file mode 100644 index 000000000..528b8ff6f --- /dev/null +++ b/dependency-check-maven/apidocs/help-doc.html @@ -0,0 +1,216 @@ + + + + + + + +API Help (dependency-check-maven 1.0.1 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:

      +
    • 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 © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/index-all.html b/dependency-check-maven/apidocs/index-all.html new file mode 100644 index 000000000..becea6b78 --- /dev/null +++ b/dependency-check-maven/apidocs/index-all.html @@ -0,0 +1,234 @@ + + + + + + + +Index (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +C D E G H I O S T
    +

    +C

    +
    +
    canGenerateReport() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns whether or not the plugin can generate a report. +
    +
    +

    +D

    +
    +
    DependencyCheckMojo - Class in org.owasp.dependencycheck.maven
    Maven Plugin that checks project dependencies to see if they have any known + published vulnerabilities.
    DependencyCheckMojo() - +Constructor for class org.owasp.dependencycheck.maven.DependencyCheckMojo +
      +
    +
    +

    +E

    +
    +
    execute() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Executes the dependency-check and generates the report. +
    execute() - +Method in class org.owasp.dependencycheck.maven.HelpMojo +
    +
    +
    +

    +G

    +
    +
    generate(Sink, Locale) - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Generates the Dependency-Check Site Report. +
    generate(Sink, SinkFactory, Locale) - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Generates the Dependency-Check Site Report. +
    getCategoryName() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns the category name. +
    getDescription(Locale) - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Gets the description of the Dependency-Check report to be displayed in + the Maven Generated Reports page. +
    getName(Locale) - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns the report name. +
    getOutputName() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns the output name. +
    getReportOutputDirectory() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns the output directory. +
    +
    +

    +H

    +
    +
    HelpMojo - Class in org.owasp.dependencycheck.maven
    Display help information on dependency-check-maven.
    + Call mvn dependency-check:help -Ddetail=true -Dgoal=<goal-name> to display parameter details.
    HelpMojo() - +Constructor for class org.owasp.dependencycheck.maven.HelpMojo +
      +
    +
    +

    +I

    +
    +
    isExternalReport() - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Returns whether this is an external report. +
    +
    +

    +O

    +
    +
    org.owasp.dependencycheck.maven - package org.owasp.dependencycheck.maven
    + + org.owasp.dependencycheck.maven + + + This is the main package containing the Mojo Maven Plugin - dependency-check.
    +
    +

    +S

    +
    +
    setReportOutputDirectory(File) - +Method in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    Sets the Reporting output directory. +
    +
    +

    +T

    +
    +
    TEST_SCOPE - +Static variable in class org.owasp.dependencycheck.maven.DependencyCheckMojo +
    The name of the test scope. +
    +
    +C D E G H I O S T + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/index.html b/dependency-check-maven/apidocs/index.html new file mode 100644 index 000000000..688144031 --- /dev/null +++ b/dependency-check-maven/apidocs/index.html @@ -0,0 +1,37 @@ + + + + + + + +dependency-check-maven 1.0.1 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/maven/package-summary.html">Non-frame version.</A> + + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/DependencyCheckMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/DependencyCheckMojo.html new file mode 100644 index 000000000..22efd27cf --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/DependencyCheckMojo.html @@ -0,0 +1,606 @@ + + + + + + + +DependencyCheckMojo (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.maven +
    +Class DependencyCheckMojo

    +
    +java.lang.Object
    +  extended by org.apache.maven.plugin.AbstractMojo
    +      extended by org.owasp.dependencycheck.maven.DependencyCheckMojo
    +
    +
    +
    All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo, org.apache.maven.reporting.MavenMultiPageReport, org.apache.maven.reporting.MavenReport
    +
    +
    +
    +
    @Mojo(name="check",
    +      defaultPhase=COMPILE,
    +      threadSafe=true,
    +      requiresDependencyResolution=RUNTIME_PLUS_SYSTEM,
    +      requiresOnline=true)
    +public class DependencyCheckMojo
    extends org.apache.maven.plugin.AbstractMojo
    implements org.apache.maven.reporting.MavenMultiPageReport
    + + +

    +Maven Plugin that checks project dependencies to see if they have any known + published vulnerabilities. +

    + +

    +

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

    + + + + + + + + + + + +
    +Field Summary
    +static StringTEST_SCOPE + +
    +          The name of the test scope.
    + + + + + + + +
    Fields inherited from interface org.apache.maven.reporting.MavenReport
    CATEGORY_PROJECT_INFORMATION, CATEGORY_PROJECT_REPORTS, ROLE
    + + + + + + + +
    Fields inherited from interface org.apache.maven.plugin.Mojo
    ROLE
    +  + + + + + + + + + + +
    +Constructor Summary
    DependencyCheckMojo() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + booleancanGenerateReport() + +
    +          Returns whether or not the plugin can generate a report.
    + voidexecute() + +
    +          Executes the dependency-check and generates the report.
    + voidgenerate(org.codehaus.doxia.sink.Sink sink, + Locale locale) + +
    +          Generates the Dependency-Check Site Report.
    + voidgenerate(org.apache.maven.doxia.sink.Sink sink, + org.apache.maven.doxia.sink.SinkFactory sinkFactory, + Locale locale) + +
    +          Generates the Dependency-Check Site Report.
    + StringgetCategoryName() + +
    +          Returns the category name.
    + StringgetDescription(Locale locale) + +
    +          Gets the description of the Dependency-Check report to be displayed in + the Maven Generated Reports page.
    + StringgetName(Locale locale) + +
    +          Returns the report name.
    + StringgetOutputName() + +
    +          Returns the output name.
    + FilegetReportOutputDirectory() + +
    +          Returns the output directory.
    + booleanisExternalReport() + +
    +          Returns whether this is an external report.
    + voidsetReportOutputDirectory(File directory) + +
    +          Sets the Reporting output directory.
    + + + + + + + +
    Methods inherited from class org.apache.maven.plugin.AbstractMojo
    getLog, getPluginContext, setLog, setPluginContext
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

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

    +TEST_SCOPE

    +
    +public static final String TEST_SCOPE
    +
    +
    The name of the test scope. +

    +

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

    +DependencyCheckMojo

    +
    +public DependencyCheckMojo()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +execute

    +
    +public void execute()
    +             throws org.apache.maven.plugin.MojoExecutionException,
    +                    org.apache.maven.plugin.MojoFailureException
    +
    +
    Executes the dependency-check and generates the report. +

    +

    +
    Specified by:
    execute in interface org.apache.maven.plugin.Mojo
    +
    +
    + +
    Throws: +
    org.apache.maven.plugin.MojoExecutionException - if a maven exception occurs +
    org.apache.maven.plugin.MojoFailureException - thrown if a CVSS score is found that is + higher then the configured level
    +
    +
    +
    + +

    +generate

    +
    +public void generate(org.codehaus.doxia.sink.Sink sink,
    +                     Locale locale)
    +              throws org.apache.maven.reporting.MavenReportException
    +
    +
    Generates the Dependency-Check Site Report. +

    +

    +
    Specified by:
    generate in interface org.apache.maven.reporting.MavenReport
    +
    +
    +
    Parameters:
    sink - the sink to write the report to
    locale - the locale to use when generating the report +
    Throws: +
    org.apache.maven.reporting.MavenReportException - if a Maven report exception occurs
    +
    +
    +
    + +

    +generate

    +
    +public void generate(org.apache.maven.doxia.sink.Sink sink,
    +                     org.apache.maven.doxia.sink.SinkFactory sinkFactory,
    +                     Locale locale)
    +              throws org.apache.maven.reporting.MavenReportException
    +
    +
    Generates the Dependency-Check Site Report. +

    +

    +
    Specified by:
    generate in interface org.apache.maven.reporting.MavenMultiPageReport
    +
    +
    +
    Parameters:
    sink - the sink to write the report to
    sinkFactory - the sink factory
    locale - the locale to use when generating the report +
    Throws: +
    org.apache.maven.reporting.MavenReportException - if a maven report exception occurs
    +
    +
    +
    + +

    +getOutputName

    +
    +public String getOutputName()
    +
    +
    Returns the output name. +

    +

    +
    Specified by:
    getOutputName in interface org.apache.maven.reporting.MavenReport
    +
    +
    + +
    Returns:
    the output name
    +
    +
    +
    + +

    +getCategoryName

    +
    +public String getCategoryName()
    +
    +
    Returns the category name. +

    +

    +
    Specified by:
    getCategoryName in interface org.apache.maven.reporting.MavenReport
    +
    +
    + +
    Returns:
    the category name
    +
    +
    +
    + +

    +getName

    +
    +public String getName(Locale locale)
    +
    +
    Returns the report name. +

    +

    +
    Specified by:
    getName in interface org.apache.maven.reporting.MavenReport
    +
    +
    +
    Parameters:
    locale - the location +
    Returns:
    the report name
    +
    +
    +
    + +

    +setReportOutputDirectory

    +
    +public void setReportOutputDirectory(File directory)
    +
    +
    Sets the Reporting output directory. +

    +

    +
    Specified by:
    setReportOutputDirectory in interface org.apache.maven.reporting.MavenReport
    +
    +
    +
    Parameters:
    directory - the output directory
    +
    +
    +
    + +

    +getReportOutputDirectory

    +
    +public File getReportOutputDirectory()
    +
    +
    Returns the output directory. +

    +

    +
    Specified by:
    getReportOutputDirectory in interface org.apache.maven.reporting.MavenReport
    +
    +
    + +
    Returns:
    the output directory
    +
    +
    +
    + +

    +getDescription

    +
    +public String getDescription(Locale locale)
    +
    +
    Gets the description of the Dependency-Check report to be displayed in + the Maven Generated Reports page. +

    +

    +
    Specified by:
    getDescription in interface org.apache.maven.reporting.MavenReport
    +
    +
    +
    Parameters:
    locale - The Locale to get the description for +
    Returns:
    the description
    +
    +
    +
    + +

    +isExternalReport

    +
    +public boolean isExternalReport()
    +
    +
    Returns whether this is an external report. +

    +

    +
    Specified by:
    isExternalReport in interface org.apache.maven.reporting.MavenReport
    +
    +
    + +
    Returns:
    true or false;
    +
    +
    +
    + +

    +canGenerateReport

    +
    +public boolean canGenerateReport()
    +
    +
    Returns whether or not the plugin can generate a report. +

    +

    +
    Specified by:
    canGenerateReport in interface org.apache.maven.reporting.MavenReport
    +
    +
    + +
    Returns:
    true
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html new file mode 100644 index 000000000..d66a69d28 --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/HelpMojo.html @@ -0,0 +1,301 @@ + + + + + + + +HelpMojo (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +org.owasp.dependencycheck.maven +
    +Class HelpMojo

    +
    +java.lang.Object
    +  extended by org.apache.maven.plugin.AbstractMojo
    +      extended by org.owasp.dependencycheck.maven.HelpMojo
    +
    +
    +
    All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo
    +
    +
    +
    +
    @Mojo(name="help",
    +      requiresProject=false,
    +      threadSafe=true)
    +public class HelpMojo
    extends org.apache.maven.plugin.AbstractMojo
    + + +

    +Display help information on dependency-check-maven.
    + Call mvn dependency-check:help -Ddetail=true -Dgoal=<goal-name> to display parameter details. +

    + +

    +

    +
    Version:
    +
    +
    Author:
    +
    +
    +
    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from interface org.apache.maven.plugin.Mojo
    ROLE
    +  + + + + + + + + + + +
    +Constructor Summary
    HelpMojo() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + voidexecute() + +
    +          
    + + + + + + + +
    Methods inherited from class org.apache.maven.plugin.AbstractMojo
    getLog, getPluginContext, setLog, setPluginContext
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

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

    +HelpMojo

    +
    +public HelpMojo()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +execute

    +
    +public void execute()
    +             throws org.apache.maven.plugin.MojoExecutionException
    +
    +
    +

    +

    + +
    Throws: +
    org.apache.maven.plugin.MojoExecutionException
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html new file mode 100644 index 000000000..9f600d0a4 --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/DependencyCheckMojo.html @@ -0,0 +1,143 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.maven.DependencyCheckMojo (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.maven.DependencyCheckMojo

    +
    +No usage of org.owasp.dependencycheck.maven.DependencyCheckMojo +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html new file mode 100644 index 000000000..5b049c583 --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/class-use/HelpMojo.html @@ -0,0 +1,143 @@ + + + + + + + +Uses of Class org.owasp.dependencycheck.maven.HelpMojo (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    org.owasp.dependencycheck.maven.HelpMojo

    +
    +No usage of org.owasp.dependencycheck.maven.HelpMojo +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html new file mode 100644 index 000000000..939abcb3c --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-frame.html @@ -0,0 +1,35 @@ + + + + + + + +org.owasp.dependencycheck.maven (dependency-check-maven 1.0.1 API) + + + + + + + + + + + +org.owasp.dependencycheck.maven + + + + +
    +Classes  + +
    +DependencyCheckMojo +
    +HelpMojo
    + + + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html new file mode 100644 index 000000000..4306c09ec --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-summary.html @@ -0,0 +1,189 @@ + + + + + + + +org.owasp.dependencycheck.maven (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package org.owasp.dependencycheck.maven +

    + + + org.owasp.dependencycheck.maven + + + This is the main package containing the Mojo Maven Plugin - dependency-check. +

    +See: +
    +          Description +

    + + + + + + + + + + + + + +
    +Class Summary
    DependencyCheckMojoMaven Plugin that checks project dependencies to see if they have any known + published vulnerabilities.
    HelpMojoDisplay help information on dependency-check-maven.
    + Call mvn dependency-check:help -Ddetail=true -Dgoal=<goal-name> to display parameter details.
    +  + +

    +

    +Package org.owasp.dependencycheck.maven Description +

    + +

    + + + org.owasp.dependencycheck.maven + + + This is the main package containing the Mojo Maven Plugin - dependency-check. + + +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html new file mode 100644 index 000000000..d81000807 --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-tree.html @@ -0,0 +1,153 @@ + + + + + + + +org.owasp.dependencycheck.maven Class Hierarchy (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

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

    +
    +

    +Class Hierarchy +

    +
      +
    • java.lang.Object
        +
      • org.apache.maven.plugin.AbstractMojo (implements org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo) +
          +
        • org.owasp.dependencycheck.maven.DependencyCheckMojo (implements org.apache.maven.reporting.MavenMultiPageReport) +
        • org.owasp.dependencycheck.maven.HelpMojo
        +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html new file mode 100644 index 000000000..2af1c5682 --- /dev/null +++ b/dependency-check-maven/apidocs/org/owasp/dependencycheck/maven/package-use.html @@ -0,0 +1,143 @@ + + + + + + + +Uses of Package org.owasp.dependencycheck.maven (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    org.owasp.dependencycheck.maven

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

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/overview-tree.html b/dependency-check-maven/apidocs/overview-tree.html new file mode 100644 index 000000000..b02d29b82 --- /dev/null +++ b/dependency-check-maven/apidocs/overview-tree.html @@ -0,0 +1,155 @@ + + + + + + + +Class Hierarchy (dependency-check-maven 1.0.1 API) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For All Packages

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

    +Class Hierarchy +

    +
      +
    • java.lang.Object
        +
      • org.apache.maven.plugin.AbstractMojo (implements org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo) +
          +
        • org.owasp.dependencycheck.maven.DependencyCheckMojo (implements org.apache.maven.reporting.MavenMultiPageReport) +
        • org.owasp.dependencycheck.maven.HelpMojo
        +
      +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +Copyright © 2013 OWASP. All Rights Reserved. + + diff --git a/dependency-check-maven/apidocs/package-list b/dependency-check-maven/apidocs/package-list new file mode 100644 index 000000000..e8943b0cd --- /dev/null +++ b/dependency-check-maven/apidocs/package-list @@ -0,0 +1 @@ +org.owasp.dependencycheck.maven diff --git a/dependency-check-maven/apidocs/resources/inherit.gif b/dependency-check-maven/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/dependency-check-maven/apidocs/stylesheet.css b/dependency-check-maven/apidocs/stylesheet.css new file mode 100644 index 000000000..6ea9e5161 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/check-mojo.html b/dependency-check-maven/check-mojo.html new file mode 100644 index 000000000..1f91b4916 --- /dev/null +++ b/dependency-check-maven/check-mojo.html @@ -0,0 +1,545 @@ + + + + + + + + + dependency-check-maven - + dependency-check:check + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + + +
    +

    dependency-check:check

    + +

    Note:This goal should be used as a Maven report.

    + +

    Full name:

    + +

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

    + +

    Description:

    + +
    Maven Plugin that checks project dependencies to see if they have +any known published vulnerabilities.
    + +

    Attributes:

    + +
      + +
    • Requires a Maven project to be executed.
    • + +
    • Requires dependency resolution of artifacts in scope: runtime+system.
    • + +
    • The goal is thread-safe and supports parallel builds.
    • + +
    • Binds by default to the lifecycle phase: compile.
    • + +
    • Requires that Maven runs in online mode.
    • +
    + +
    +

    Required Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameTypeSinceDescription
    autoUpdateboolean-Sets whether auto-updating of the NVD CVE/CPE data is enabled. It +is not recommended that this be turned to false. Default is true.
    Default value is: true.
    User property is: autoupdate.
    externalReportboolean-Sets whether or not the external report format should be used.
    Default value is: false.
    User property is: externalReport.
    failBuildOnCVSSfloat-Specifies if the build should be failed if a CVSS score above a +specified level is identified. The default is 11 which means since +the CVSS scores are 0-10, by default the build will never fail.
    Default value is: 11.
    User property is: failBuildOnCVSS.
    formatString-The report format to be generated (HTML, XML, VULN, ALL). This +configuration option has no affect if using this within the Site +plugin unless the externalReport is set to true. Default is HTML.
    Default value is: HTML.
    User property is: format.
    outputDirectoryFile-The output directory.
    Default value is: ${project.build.directory}.
    reportOutputDirectoryFile-Specifies the destination directory for the generated +Dependency-Check report.
    Default value is: ${project.reporting.outputDirectory}.
    User property is: reportOutputDirectory.
    +
    + +
    +

    Optional Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameTypeSinceDescription
    connectionTimeoutString-The Connection Timeout.
    User property is: connectionTimeout.
    descriptionString-The description of the Dependency-Check report to be displayed in +the Maven Generated Reports page
    Default value is: A report providing details on any published vulnerabilities within project dependencies. This report is a best effort but may contain false positives and false negatives..
    User property is: description.
    nameString-The name of the report to be displayed in the Maven Generated +Reports page
    Default value is: Dependency-Check.
    User property is: name.
    proxyPortString-The Proxy Port.
    User property is: proxyPort.
    proxyUrlString-The Proxy URL.
    User property is: proxyUrl.
    reportNameString-The name of the site report destination.
    Default value is: dependency-check-report.
    User property is: report-name.
    +
    + +
    +

    Parameter Details

    + +

    autoUpdate:

    + +
    Sets whether auto-updating of the NVD CVE/CPE data is enabled. It +is not recommended that this be turned to false. Default is true.
    + +
      + +
    • Type: boolean
    • + +
    • Required: Yes
    • + +
    • User Property: autoupdate
    • + +
    • Default: true
    • +

    +

    connectionTimeout:

    + +
    The Connection Timeout.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: connectionTimeout
    • +

    +

    description:

    + +
    The description of the Dependency-Check report to be displayed in +the Maven Generated Reports page
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: description
    • + +
    • Default: A report providing details on any published vulnerabilities within project dependencies. This report is a best effort but may contain false positives and false negatives.
    • +

    +

    externalReport:

    + +
    Sets whether or not the external report format should be used.
    + +
      + +
    • Type: boolean
    • + +
    • Required: Yes
    • + +
    • User Property: externalReport
    • + +
    • Default: false
    • +

    +

    failBuildOnCVSS:

    + +
    Specifies if the build should be failed if a CVSS score above a +specified level is identified. The default is 11 which means since +the CVSS scores are 0-10, by default the build will never fail.
    + +
      + +
    • Type: float
    • + +
    • Required: Yes
    • + +
    • User Property: failBuildOnCVSS
    • + +
    • Default: 11
    • +

    +

    format:

    + +
    The report format to be generated (HTML, XML, VULN, ALL). This +configuration option has no affect if using this within the Site +plugin unless the externalReport is set to true. Default is HTML.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: Yes
    • + +
    • User Property: format
    • + +
    • Default: HTML
    • +

    +

    name:

    + +
    The name of the report to be displayed in the Maven Generated +Reports page
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: name
    • + +
    • Default: Dependency-Check
    • +

    +

    outputDirectory:

    + +
    The output directory.
    + +
      + +
    • Type: java.io.File
    • + +
    • Required: Yes
    • + +
    • Default: ${project.build.directory}
    • +

    +

    proxyPort:

    + +
    The Proxy Port.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: proxyPort
    • +

    +

    proxyUrl:

    + +
    The Proxy URL.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: proxyUrl
    • +

    +

    reportName:

    + +
    The name of the site report destination.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: report-name
    • + +
    • Default: dependency-check-report
    • +

    +

    reportOutputDirectory:

    + +
    Specifies the destination directory for the generated +Dependency-Check report.
    + +
      + +
    • Type: java.io.File
    • + +
    • Required: Yes
    • + +
    • User Property: reportOutputDirectory
    • + +
    • Default: ${project.reporting.outputDirectory}
    • +
    +
    +
    + + +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/checkstyle.html b/dependency-check-maven/checkstyle.html new file mode 100644 index 000000000..09d2d382c --- /dev/null +++ b/dependency-check-maven/checkstyle.html @@ -0,0 +1,302 @@ + + + + + + + + + dependency-check-maven - Checkstyle Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Checkstyle Results

    +

    The following document contains the results of Checkstylerss feed

    +
    +

    Summary

    + + + + + + + + + + +
    FilesInfos InfosWarnings WarningsErrors Errors
    15003
    + +
    +

    Details

    +
    +

    src/main/java/org/owasp/dependencycheck/maven/DependencyCheckMojo.java

    + + + + + + + + + + + + + + + + +
    ViolationMessageLine
    Errors'}' is not preceded with whitespace.129
    Errors'}' is not preceded with whitespace.137
    Errors'}' is not preceded with whitespace.143
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/checkstyle.rss b/dependency-check-maven/checkstyle.rss new file mode 100644 index 000000000..2cccc7f4a --- /dev/null +++ b/dependency-check-maven/checkstyle.rss @@ -0,0 +1,247 @@ + + + + + dependency-check-maven - Checkstyle report + http://maven.apache.org + dependency-check-maven - Checkstyle report + en-us + ©2013 OWASP + + File: 15, + Errors: 3, + Warnings: 0, + Infos: 0 + + http://maven.apache.org/checkstyle.html + +

    Click here for the full Checkstyle report.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    FilesIWE
    + org/owasp/dependencycheck/maven/package-info.java + + 0 + + 0 + + 0 +
    + target/classes/log.properties + + 0 + + 0 + + 0 +
    + src/main/java/org/owasp/dependencycheck/maven/DependencyCheckMojo.java + + 0 + + 0 + + 3 +
    + target/generated-classes/cobertura/mojo.properties + + 0 + + 0 + + 0 +
    + org/owasp/dependencycheck/maven/DependencyCheckMojo.java + + 0 + + 0 + + 0 +
    + target/maven-archiver/pom.properties + + 0 + + 0 + + 0 +
    + mojo.properties + + 0 + + 0 + + 0 +
    + src/main/resources/log.properties + + 0 + + 0 + + 0 +
    + target/generated-classes/cobertura/cobertura.properties + + 0 + + 0 + + 0 +
    + target/maven-plugin-help.properties + + 0 + + 0 + + 0 +
    + src/main/java/org/owasp/dependencycheck/maven/package-info.java + + 0 + + 0 + + 0 +
    + log.properties + + 0 + + 0 + + 0 +
    + target/generated-classes/cobertura/log.properties + + 0 + + 0 + + 0 +
    + src/main/resources/mojo.properties + + 0 + + 0 + + 0 +
    + target/classes/mojo.properties + + 0 + + 0 + + 0 +
    + +
    +
    +
    +
    + diff --git a/dependency-check-maven/cobertura/css/help.css b/dependency-check-maven/cobertura/css/help.css new file mode 100644 index 000000000..b023e0334 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/css/main.css b/dependency-check-maven/cobertura/css/main.css new file mode 100644 index 000000000..fb209e413 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/css/sortabletable.css b/dependency-check-maven/cobertura/css/sortabletable.css new file mode 100644 index 000000000..7c1ff92bd --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/css/source-viewer.css b/dependency-check-maven/cobertura/css/source-viewer.css new file mode 100644 index 000000000..125a994b8 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/css/tooltip.css b/dependency-check-maven/cobertura/css/tooltip.css new file mode 100644 index 000000000..7c8050c89 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/frame-packages.html b/dependency-check-maven/cobertura/frame-packages.html new file mode 100644 index 000000000..45c560793 --- /dev/null +++ b/dependency-check-maven/cobertura/frame-packages.html @@ -0,0 +1,20 @@ + + + + +Coverage Report + + + +
    Packages
    + + + + + + + +
    All
    org.owasp.dependencycheck.maven
    + + diff --git a/dependency-check-maven/cobertura/frame-sourcefiles-org.owasp.dependencycheck.maven.html b/dependency-check-maven/cobertura/frame-sourcefiles-org.owasp.dependencycheck.maven.html new file mode 100644 index 000000000..ab1109734 --- /dev/null +++ b/dependency-check-maven/cobertura/frame-sourcefiles-org.owasp.dependencycheck.maven.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +org.owasp.dependencycheck.maven +
    +
     
    +
    Classes
    + + + + + + + + + +
    DependencyCheckMojo (0%)
    HelpMojo (0%)
    + + diff --git a/dependency-check-maven/cobertura/frame-sourcefiles.html b/dependency-check-maven/cobertura/frame-sourcefiles.html new file mode 100644 index 000000000..b3390c2e4 --- /dev/null +++ b/dependency-check-maven/cobertura/frame-sourcefiles.html @@ -0,0 +1,26 @@ + + + + +Coverage Report Classes + + + +
    +All Packages +
    +
     
    +
    Classes
    + + + + + + + + + +
    DependencyCheckMojo (0%)
    HelpMojo (0%)
    + + diff --git a/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html b/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html new file mode 100644 index 000000000..6814a634c --- /dev/null +++ b/dependency-check-maven/cobertura/frame-summary-org.owasp.dependencycheck.maven.html @@ -0,0 +1,44 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - org.owasp.dependencycheck.maven
    +
     
    + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    org.owasp.dependencycheck.maven2
    0%
    0/474
    0%
    0/222
    4.07
    + +
     
    + + + + + + + + +
    Classes in this Package Line Coverage Branch Coverage Complexity
    DependencyCheckMojo
    0%
    0/326
    0%
    0/116
    3.429
    HelpMojo
    0%
    0/148
    0%
    0/106
    5.267
    + + + + diff --git a/dependency-check-maven/cobertura/frame-summary.html b/dependency-check-maven/cobertura/frame-summary.html new file mode 100644 index 000000000..78eabe58a --- /dev/null +++ b/dependency-check-maven/cobertura/frame-summary.html @@ -0,0 +1,30 @@ + + + + +Coverage Report + + + + + + + +
    Coverage Report - All Packages
    +
     
    + + + + + + +
    Package # Classes Line Coverage Branch Coverage Complexity
    All Packages2
    0%
    0/474
    0%
    0/222
    4.07
    org.owasp.dependencycheck.maven2
    0%
    0/474
    0%
    0/222
    4.07
    + + + + diff --git a/dependency-check-maven/cobertura/help.html b/dependency-check-maven/cobertura/help.html new file mode 100644 index 000000000..b1de76394 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/images/blank.png b/dependency-check-maven/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/dependency-check-maven/cobertura/images/downsimple.png b/dependency-check-maven/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/dependency-check-maven/cobertura/images/upsimple.png b/dependency-check-maven/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/dependency-check-maven/cobertura/index.html b/dependency-check-maven/cobertura/index.html new file mode 100644 index 000000000..17ebf4f7b --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/js/customsorttypes.js b/dependency-check-maven/cobertura/js/customsorttypes.js new file mode 100644 index 000000000..1fe955903 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/js/popup.js b/dependency-check-maven/cobertura/js/popup.js new file mode 100644 index 000000000..f1160ff58 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/js/sortabletable.js b/dependency-check-maven/cobertura/js/sortabletable.js new file mode 100644 index 000000000..2f7c72e5b --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/js/stringbuilder.js b/dependency-check-maven/cobertura/js/stringbuilder.js new file mode 100644 index 000000000..180812607 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html new file mode 100644 index 000000000..92d93311a --- /dev/null +++ b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.DependencyCheckMojo.html @@ -0,0 +1,1300 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.maven.DependencyCheckMojo
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    DependencyCheckMojo
    0%
    0/326
    0%
    0/116
    3.429
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     /*
     2  
      * This file is part of dependency-check-maven.
     3  
      *
     4  
      * Dependency-check-maven 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-maven 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-maven. If not, see http://www.gnu.org/licenses/.
     16  
      *
     17  
      * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
     18  
      */
     19  
     package org.owasp.dependencycheck.maven;
     20  
     
     21  
     import java.io.File;
     22  
     import java.io.IOException;
     23  
     import java.io.InputStream;
     24  
     import java.io.UnsupportedEncodingException;
     25  
     import java.net.URLEncoder;
     26  
     import java.text.DateFormat;
     27  
     import java.util.Date;
     28  
     import java.util.List;
     29  
     import java.util.Locale;
     30  
     import java.util.logging.Level;
     31  
     import java.util.logging.Logger;
     32  
     import org.apache.maven.doxia.sink.SinkFactory;
     33  
     import org.apache.maven.plugin.AbstractMojo;
     34  
     import org.apache.maven.plugin.MojoExecutionException;
     35  
     import org.apache.maven.project.MavenProject;
     36  
     import java.util.Set;
     37  
     import java.util.logging.LogManager;
     38  
     import org.apache.maven.artifact.Artifact;
     39  
     import org.apache.maven.plugins.annotations.Component;
     40  
     import org.apache.maven.plugins.annotations.LifecyclePhase;
     41  
     import org.apache.maven.plugins.annotations.Mojo;
     42  
     import org.apache.maven.plugins.annotations.Parameter;
     43  
     import org.apache.maven.plugins.annotations.ResolutionScope;
     44  
     import org.apache.maven.reporting.MavenMultiPageReport;
     45  
     import org.apache.maven.reporting.MavenReport;
     46  
     import org.apache.maven.reporting.MavenReportException;
     47  
     import org.apache.maven.doxia.sink.Sink;
     48  
     import org.apache.maven.plugin.MojoFailureException;
     49  
     import org.owasp.dependencycheck.Engine;
     50  
     import org.owasp.dependencycheck.dependency.Dependency;
     51  
     import org.owasp.dependencycheck.dependency.Evidence;
     52  
     import org.owasp.dependencycheck.dependency.Identifier;
     53  
     import org.owasp.dependencycheck.dependency.Reference;
     54  
     import org.owasp.dependencycheck.dependency.Vulnerability;
     55  
     import org.owasp.dependencycheck.dependency.VulnerableSoftware;
     56  
     import org.owasp.dependencycheck.reporting.ReportGenerator;
     57  
     import org.owasp.dependencycheck.utils.Settings;
     58  
     
     59  
     /**
     60  
      * Maven Plugin that checks project dependencies to see if they have any known
     61  
      * published vulnerabilities.
     62  
      *
     63  
      * @author Jeremy Long (jeremy.long@owasp.org)
     64  
      */
     65  
     @Mojo(name = "check", defaultPhase = LifecyclePhase.COMPILE, threadSafe = true,
     66  
             requiresDependencyResolution = ResolutionScope.RUNTIME_PLUS_SYSTEM,
     67  
             requiresOnline = true)
     68  0
     public class DependencyCheckMojo extends AbstractMojo implements MavenMultiPageReport {
     69  
     
     70  
         /**
     71  
          * The properties file location.
     72  
          */
     73  
         private static final String PROPERTIES_FILE = "mojo.properties";
     74  
         /**
     75  
          * Name of the logging properties file.
     76  
          */
     77  
         private static final String LOG_PROPERTIES_FILE = "log.properties";
     78  
         /**
     79  
          * The name of the test scope.
     80  
          */
     81  
         public static final String TEST_SCOPE = "test";
     82  
         // <editor-fold defaultstate="collapsed" desc="Maven bound parameters and components">
     83  
         /**
     84  
          * The Maven Project Object.
     85  
          */
     86  
         @Component
     87  
         private MavenProject project;
     88  
         /**
     89  
          * The name of the site report destination.
     90  
          */
     91  
         @Parameter(property = "report-name", defaultValue = "dependency-check-report")
     92  
         private String reportName;
     93  
         /**
     94  
          * The name of the report to be displayed in the Maven Generated Reports
     95  
          * page
     96  
          */
     97  
         @Parameter(property = "name", defaultValue = "Dependency-Check")
     98  
         private String name;
     99  
         /**
     100  
          * The description of the Dependency-Check report to be displayed in the
     101  
          * Maven Generated Reports page
     102  
          */
     103  
         @Parameter(property = "description", defaultValue = "A report providing details on any published "
     104  
                 + "vulnerabilities within project dependencies. This report is a best effort but may contain "
     105  
                 + "false positives and false negatives.")
     106  
         private String description;
     107  
         /**
     108  
          * Specifies the destination directory for the generated Dependency-Check
     109  
          * report.
     110  
          */
     111  
         @Parameter(property = "reportOutputDirectory", defaultValue = "${project.reporting.outputDirectory}", required = true)
     112  
         private File reportOutputDirectory;
     113  
         /**
     114  
          * Specifies if the build should be failed if a CVSS score above a specified
     115  
          * level is identified. The default is 11 which means since the CVSS scores
     116  
          * are 0-10, by default the build will never fail.
     117  
          */
     118  0
         @Parameter(property = "failBuildOnCVSS", defaultValue = "11", required = true)
     119  
         private float failBuildOnCVSS = 11;
     120  
         /**
     121  
          * The output directory.
     122  
          */
     123  
         @Parameter(defaultValue = "${project.build.directory}", required = true)
     124  
         private File outputDirectory;
     125  
         /**
     126  
          * Sets whether auto-updating of the NVD CVE/CPE data is enabled. It is not
     127  
          * recommended that this be turned to false. Default is true.
     128  
          */
     129  0
         @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
     130  
         @Parameter(property = "autoupdate", defaultValue = "true", required = true)
     131  
         private boolean autoUpdate = true;
     132  
         /**
     133  
          * The report format to be generated (HTML, XML, VULN, ALL). This
     134  
          * configuration option has no affect if using this within the Site plugin
     135  
          * unless the externalReport is set to true. Default is HTML.
     136  
          */
     137  0
         @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
     138  
         @Parameter(property = "format", defaultValue = "HTML", required = true)
     139  
         private String format = "HTML";
     140  
         /**
     141  
          * Sets whether or not the external report format should be used.
     142  
          */
     143  0
         @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
     144  
         @Parameter(property = "externalReport", defaultValue = "false", required = true)
     145  
         private boolean externalReport = false;
     146  
         /**
     147  
          * The Proxy URL.
     148  
          */
     149  0
         @SuppressWarnings("CanBeFinal")
     150  
         @Parameter(property = "proxyUrl", defaultValue = "", required = false)
     151  
         private String proxyUrl = null;
     152  
         /**
     153  
          * The Proxy Port.
     154  
          */
     155  0
         @SuppressWarnings("CanBeFinal")
     156  
         @Parameter(property = "proxyPort", defaultValue = "", required = false)
     157  
         private String proxyPort = null;
     158  
         /**
     159  
          * The Connection Timeout.
     160  
          */
     161  0
         @SuppressWarnings("CanBeFinal")
     162  
         @Parameter(property = "connectionTimeout", defaultValue = "", required = false)
     163  
         private String connectionTimeout = null;
     164  
     
     165  
         // </editor-fold>
     166  
         /**
     167  
          * Configures the logger for use by the application.
     168  
          */
     169  
         private static void prepareLogger() {
     170  0
             InputStream in = null;
     171  
             try {
     172  0
                 in = DependencyCheckMojo.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
     173  0
                 LogManager.getLogManager().reset();
     174  0
                 LogManager.getLogManager().readConfiguration(in);
     175  
                 //TODO add code to disable fine grained log file.
     176  
     //            Logger logger = LogManager.getLogManager().getLogger("");
     177  
     //            for (Handler h : logger.getHandlers()) {
     178  
     //                if (h.getFormatter(). h.toString());
     179  
     //            }
     180  0
             } catch (IOException ex) {
     181  0
                 System.err.println(ex.toString());
     182  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
     183  0
             } catch (SecurityException ex) {
     184  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
     185  
             } finally {
     186  0
                 if (in != null) {
     187  
                     try {
     188  0
                         in.close();
     189  0
                     } catch (Exception ex) {
     190  
                         //noinspection UnusedAssignment
     191  0
                         in = null;
     192  0
                     }
     193  
                 }
     194  
             }
     195  0
         }
     196  
     
     197  
         /**
     198  
          * Executes the Dependency-Check on the dependent libraries.
     199  
          *
     200  
          * @return the Engine used to scan the dependencies.
     201  
          */
     202  
         private Engine executeDependencyCheck() {
     203  0
             prepareLogger();
     204  0
             populateSettings();
     205  0
             final Engine engine = new Engine();
     206  0
             final Set<Artifact> artifacts = project.getArtifacts();
     207  0
             for (Artifact a : artifacts) {
     208  0
                 if (!TEST_SCOPE.equals(a.getScope())) {
     209  0
                     engine.scan(a.getFile().getAbsolutePath());
     210  
                 }
     211  
             }
     212  0
             engine.analyzeDependencies();
     213  0
             return engine;
     214  
         }
     215  
     
     216  
         /**
     217  
          * Generates the reports for a given dependency-check engine.
     218  
          *
     219  
          * @param engine a dependency-check engine
     220  
          */
     221  
         private void generateExternalReports(Engine engine) {
     222  0
             final ReportGenerator r = new ReportGenerator(project.getName(), engine.getDependencies(), engine.getAnalyzers());
     223  
             try {
     224  0
                 r.generateReports(outputDirectory.getCanonicalPath(), format);
     225  0
             } catch (IOException ex) {
     226  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
     227  0
             } catch (Exception ex) {
     228  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
     229  0
             }
     230  0
         }
     231  
     
     232  
         /**
     233  
          * Generates a dependency-check report using the Maven Site format.
     234  
          *
     235  
          * @param engine the engine used to scan the dependencies
     236  
          * @param sink the sink to write the data to
     237  
          */
     238  
         private void generateMavenSiteReport(final Engine engine, Sink sink) {
     239  0
             final List<Dependency> dependencies = engine.getDependencies();
     240  
     
     241  0
             writeSiteReportHeader(sink, project.getName());
     242  0
             writeSiteReportTOC(sink, dependencies);
     243  
     
     244  0
             int cnt = 0;
     245  0
             for (Dependency d : dependencies) {
     246  0
                 writeSiteReportDependencyHeader(sink, d);
     247  0
                 cnt = writeSiteReportDependencyAnalysisExceptions(d, cnt, sink);
     248  0
                 cnt = writeSiteReportDependencyEvidenceUsed(d, cnt, sink);
     249  0
                 cnt = writeSiteReportDependencyRelatedDependencies(d, cnt, sink);
     250  0
                 writeSiteReportDependencyIdentifiers(d, sink);
     251  0
                 writeSiteReportDependencyVulnerabilities(d, sink, cnt);
     252  
             }
     253  0
             sink.body_();
     254  0
         }
     255  
     
     256  
         // <editor-fold defaultstate="collapsed" desc="various writeXXXXX methods to generate the Site Report">
     257  
         /**
     258  
          * Writes the vulnerabilities to the site report.
     259  
          *
     260  
          * @param d the dependency
     261  
          * @param sink the sink to write the data to
     262  
          * @param collapsibleHeaderCount the collapsible header count
     263  
          */
     264  
         private void writeSiteReportDependencyVulnerabilities(Dependency d, Sink sink, int collapsibleHeaderCount) {
     265  0
             int cnt = collapsibleHeaderCount;
     266  0
             if (d.getVulnerabilities() != null && !d.getVulnerabilities().isEmpty()) {
     267  0
                 for (Vulnerability v : d.getVulnerabilities()) {
     268  
     
     269  0
                     sink.paragraph();
     270  0
                     sink.bold();
     271  
                     try {
     272  0
                         sink.link("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + URLEncoder.encode(v.getName(), "US-ASCII"));
     273  0
                         sink.text(v.getName());
     274  0
                         sink.link_();
     275  0
                         sink.bold_();
     276  0
                     } catch (UnsupportedEncodingException ex) {
     277  0
                         sink.text(v.getName());
     278  0
                         sink.bold_();
     279  0
                         sink.lineBreak();
     280  0
                         sink.text("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + v.getName());
     281  0
                     }
     282  0
                     sink.paragraph_();
     283  0
                     sink.paragraph();
     284  0
                     sink.text("Severity: ");
     285  0
                     if (v.getCvssScore() < 4.0) {
     286  0
                         sink.text("Low");
     287  
                     } else {
     288  0
                         if (v.getCvssScore() >= 7.0) {
     289  0
                             sink.text("High");
     290  
                         } else {
     291  0
                             sink.text("Medium");
     292  
                         }
     293  
                     }
     294  0
                     sink.lineBreak();
     295  0
                     sink.text("CVSS Score: " + v.getCvssScore());
     296  0
                     if (v.getCwe() != null && !v.getCwe().isEmpty()) {
     297  0
                         sink.lineBreak();
     298  0
                         sink.text("CWE: ");
     299  0
                         sink.text(v.getCwe());
     300  
                     }
     301  0
                     sink.paragraph_();
     302  0
                     sink.paragraph();
     303  0
                     sink.text(v.getDescription());
     304  0
                     if (v.getReferences() != null && !v.getReferences().isEmpty()) {
     305  0
                         sink.list();
     306  0
                         for (Reference ref : v.getReferences()) {
     307  0
                             sink.listItem();
     308  0
                             sink.text(ref.getSource());
     309  0
                             sink.text(" - ");
     310  0
                             sink.link(ref.getUrl());
     311  0
                             sink.text(ref.getName());
     312  0
                             sink.link_();
     313  0
                             sink.listItem_();
     314  
                         }
     315  0
                         sink.list_();
     316  
                     }
     317  0
                     sink.paragraph_();
     318  0
                     if (v.getVulnerableSoftware() != null && !v.getVulnerableSoftware().isEmpty()) {
     319  0
                         sink.paragraph();
     320  
     
     321  0
                         cnt += 1;
     322  0
                         sink.rawText("Vulnerable Software <a href=\"javascript:toggleElement(this, 'vulnSoft" + cnt + "')\">[-]</a>");
     323  0
                         sink.rawText("<div id=\"vulnSoft" + cnt + "\" style=\"display:block\">");
     324  0
                         sink.list();
     325  0
                         for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
     326  0
                             sink.listItem();
     327  
                             try {
     328  0
                                 sink.link("http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + URLEncoder.encode(vs.getName(), "US-ASCII"));
     329  0
                                 sink.text(vs.getName());
     330  0
                                 sink.link_();
     331  0
                                 if (vs.hasPreviousVersion()) {
     332  0
                                     sink.text(" and all previous versions.");
     333  
                                 }
     334  0
                             } catch (UnsupportedEncodingException ex) {
     335  0
                                 sink.text(vs.getName());
     336  0
                                 if (vs.hasPreviousVersion()) {
     337  0
                                     sink.text(" and all previous versions.");
     338  
                                 }
     339  0
                                 sink.text(" (http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + vs.getName() + ")");
     340  0
                             }
     341  
     
     342  0
                             sink.listItem_();
     343  
                         }
     344  0
                         sink.list_();
     345  0
                         sink.rawText("</div>");
     346  0
                         sink.paragraph_();
     347  
                     }
     348  
                 }
     349  
             }
     350  0
         }
     351  
     
     352  
         /**
     353  
          * Writes the identifiers to the site report.
     354  
          *
     355  
          * @param d the dependency
     356  
          * @param sink the sink to write the data to
     357  
          */
     358  
         private void writeSiteReportDependencyIdentifiers(Dependency d, Sink sink) {
     359  0
             if (d.getIdentifiers() != null && !d.getIdentifiers().isEmpty()) {
     360  0
                 sink.sectionTitle4();
     361  0
                 sink.text("Identifiers");
     362  0
                 sink.sectionTitle4_();
     363  0
                 sink.list();
     364  0
                 for (Identifier i : d.getIdentifiers()) {
     365  0
                     sink.listItem();
     366  0
                     sink.text(i.getType());
     367  0
                     sink.text(": ");
     368  0
                     if (i.getUrl() != null && i.getUrl().length() > 0) {
     369  0
                         sink.link(i.getUrl());
     370  0
                         sink.text(i.getValue());
     371  0
                         sink.link_();
     372  
                     } else {
     373  0
                         sink.text(i.getValue());
     374  
                     }
     375  0
                     if (i.getDescription() != null && i.getDescription().length() > 0) {
     376  0
                         sink.lineBreak();
     377  0
                         sink.text(i.getDescription());
     378  
                     }
     379  0
                     sink.listItem_();
     380  
                 }
     381  0
                 sink.list_();
     382  
             }
     383  0
         }
     384  
     
     385  
         /**
     386  
          * Writes the related dependencies to the site report.
     387  
          *
     388  
          * @param d the dependency
     389  
          * @param sink the sink to write the data to
     390  
          * @param collapsibleHeaderCount the collapsible header count
     391  
          * @return the collapsible header count
     392  
          */
     393  
         private int writeSiteReportDependencyRelatedDependencies(Dependency d, int collapsibleHeaderCount, Sink sink) {
     394  0
             int cnt = collapsibleHeaderCount;
     395  0
             if (d.getRelatedDependencies() != null && !d.getRelatedDependencies().isEmpty()) {
     396  0
                 cnt += 1;
     397  0
                 sink.sectionTitle4();
     398  0
                 sink.rawText("Related Dependencies <a href=\"javascript:toggleElement(this, 'related" + cnt + "')\">[+]</a>");
     399  0
                 sink.sectionTitle4_();
     400  0
                 sink.rawText("<div id=\"related" + cnt + "\" style=\"display:none\">");
     401  0
                 sink.list();
     402  0
                 for (Dependency r : d.getRelatedDependencies()) {
     403  0
                     sink.listItem();
     404  0
                     sink.text(r.getFileName());
     405  0
                     sink.list();
     406  0
                     writeListItem(sink, "File Path: " + r.getFilePath());
     407  0
                     writeListItem(sink, "SHA1: " + r.getSha1sum());
     408  0
                     writeListItem(sink, "MD5: " + r.getMd5sum());
     409  0
                     sink.list_();
     410  0
                     sink.listItem_();
     411  
                 }
     412  0
                 sink.list_();
     413  0
                 sink.rawText("</div>");
     414  
             }
     415  0
             return cnt;
     416  
         }
     417  
     
     418  
         /**
     419  
          * Writes the evidence used to the site report.
     420  
          *
     421  
          * @param d the dependency
     422  
          * @param sink the sink to write the data to
     423  
          * @param collapsibleHeaderCount the collapsible header count
     424  
          * @return the collapsible header count
     425  
          */
     426  
         private int writeSiteReportDependencyEvidenceUsed(Dependency d, int collapsibleHeaderCount, Sink sink) {
     427  0
             int cnt = collapsibleHeaderCount;
     428  0
             if (d.getEvidenceUsed() != null && d.getEvidenceUsed().size() > 0) {
     429  0
                 cnt += 1;
     430  0
                 sink.sectionTitle4();
     431  0
                 sink.rawText("Evidence Collected <a href=\"javascript:toggleElement(this, 'evidence" + cnt + "')\">[+]</a>");
     432  0
                 sink.sectionTitle4_();
     433  0
                 sink.rawText("<div id=\"evidence" + cnt + "\" style=\"display:none\">");
     434  0
                 sink.table();
     435  0
                 sink.tableRow();
     436  0
                 writeTableHeaderCell(sink, "Source");
     437  0
                 writeTableHeaderCell(sink, "Name");
     438  0
                 writeTableHeaderCell(sink, "Value");
     439  0
                 sink.tableRow_();
     440  0
                 for (Evidence e : d.getEvidenceUsed()) {
     441  0
                     sink.tableRow();
     442  0
                     writeTableCell(sink, e.getSource());
     443  0
                     writeTableCell(sink, e.getName());
     444  0
                     writeTableCell(sink, e.getValue());
     445  0
                     sink.tableRow_();
     446  
                 }
     447  0
                 sink.table_();
     448  0
                 sink.rawText("</div>");
     449  
             }
     450  0
             return cnt;
     451  
         }
     452  
     
     453  
         /**
     454  
          * Writes the analysis exceptions generated during analysis to the site
     455  
          * report.
     456  
          *
     457  
          * @param d the dependency
     458  
          * @param sink the sink to write the data to
     459  
          * @param collapsibleHeaderCount the collapsible header count
     460  
          * @return the collapsible header count
     461  
          */
     462  
         private int writeSiteReportDependencyAnalysisExceptions(Dependency d, int collapsibleHeaderCount, Sink sink) {
     463  0
             int cnt = collapsibleHeaderCount;
     464  0
             if (d.getAnalysisExceptions() != null && !d.getAnalysisExceptions().isEmpty()) {
     465  0
                 cnt += 1;
     466  0
                 sink.sectionTitle4();
     467  0
                 sink.rawText("<font style=\"color:red\">Errors occurred during analysis:</font> <a href=\"javascript:toggleElement(this, 'errors"
     468  
                         + cnt + "')\">[+]</a>");
     469  0
                 sink.sectionTitle4_();
     470  0
                 sink.rawText("<div id=\"errors" + cnt + "\">");
     471  0
                 sink.list();
     472  0
                 for (Exception e : d.getAnalysisExceptions()) {
     473  0
                     sink.listItem();
     474  0
                     sink.text(e.getMessage());
     475  0
                     sink.listItem_();
     476  
                 }
     477  0
                 sink.list_();
     478  0
                 sink.rawText("</div>");
     479  
             }
     480  0
             return cnt;
     481  
         }
     482  
     
     483  
         /**
     484  
          * Writes the dependency header to the site report.
     485  
          *
     486  
          * @param d the dependency
     487  
          * @param sink the sink to write the data to
     488  
          */
     489  
         private void writeSiteReportDependencyHeader(Sink sink, Dependency d) {
     490  0
             sink.sectionTitle2();
     491  0
             sink.anchor("sha1" + d.getSha1sum());
     492  0
             sink.text(d.getFileName());
     493  0
             sink.anchor_();
     494  0
             sink.sectionTitle2_();
     495  0
             if (d.getDescription() != null && d.getDescription().length() > 0) {
     496  0
                 sink.paragraph();
     497  0
                 sink.bold();
     498  0
                 sink.text("Description: ");
     499  0
                 sink.bold_();
     500  0
                 sink.text(d.getDescription());
     501  0
                 sink.paragraph_();
     502  
             }
     503  0
             if (d.getLicense() != null && d.getLicense().length() > 0) {
     504  0
                 sink.paragraph();
     505  0
                 sink.bold();
     506  0
                 sink.text("License: ");
     507  0
                 sink.bold_();
     508  0
                 if (d.getLicense().startsWith("http://") && !d.getLicense().contains(" ")) {
     509  0
                     sink.link(d.getLicense());
     510  0
                     sink.text(d.getLicense());
     511  0
                     sink.link_();
     512  
                 } else {
     513  0
                     sink.text(d.getLicense());
     514  
                 }
     515  0
                 sink.paragraph_();
     516  
             }
     517  0
         }
     518  
     
     519  
         /**
     520  
          * Adds a list item to the site report.
     521  
          *
     522  
          * @param sink the sink to write the data to
     523  
          * @param text the text to write
     524  
          */
     525  
         private void writeListItem(Sink sink, String text) {
     526  0
             sink.listItem();
     527  0
             sink.text(text);
     528  0
             sink.listItem_();
     529  0
         }
     530  
     
     531  
         /**
     532  
          * Adds a table cell to the site report.
     533  
          *
     534  
          * @param sink the sink to write the data to
     535  
          * @param text the text to write
     536  
          */
     537  
         private void writeTableCell(Sink sink, String text) {
     538  0
             sink.tableCell();
     539  0
             sink.text(text);
     540  0
             sink.tableCell_();
     541  0
         }
     542  
     
     543  
         /**
     544  
          * Adds a table header cell to the site report.
     545  
          *
     546  
          * @param sink the sink to write the data to
     547  
          * @param text the text to write
     548  
          */
     549  
         private void writeTableHeaderCell(Sink sink, String text) {
     550  0
             sink.tableHeaderCell();
     551  0
             sink.text(text);
     552  0
             sink.tableHeaderCell_();
     553  0
         }
     554  
     
     555  
         /**
     556  
          * Writes the TOC for the site report.
     557  
          *
     558  
          * @param sink the sink to write the data to
     559  
          * @param dependencies the dependencies that are being reported on
     560  
          */
     561  
         private void writeSiteReportTOC(Sink sink, final List<Dependency> dependencies) {
     562  0
             sink.list();
     563  0
             for (Dependency d : dependencies) {
     564  0
                 sink.listItem();
     565  0
                 sink.link("#sha1" + d.getSha1sum());
     566  0
                 sink.text(d.getFileName());
     567  0
                 sink.link_();
     568  0
                 if (!d.getVulnerabilities().isEmpty()) {
     569  0
                     sink.rawText(" <font style=\"color:red\">•</font>");
     570  
                 }
     571  0
                 if (!d.getRelatedDependencies().isEmpty()) {
     572  0
                     sink.list();
     573  0
                     for (Dependency r : d.getRelatedDependencies()) {
     574  0
                         writeListItem(sink, r.getFileName());
     575  
                     }
     576  0
                     sink.list_();
     577  
                 }
     578  0
                 sink.listItem_();
     579  
             }
     580  0
             sink.list_();
     581  0
         }
     582  
     
     583  
         /**
     584  
          * Writes the site report header.
     585  
          *
     586  
          * @param sink the sink to write the data to
     587  
          * @param projectName the name of the project
     588  
          */
     589  
         private void writeSiteReportHeader(Sink sink, String projectName) {
     590  0
             sink.head();
     591  0
             sink.title();
     592  0
             sink.text("Dependency-Check Report: " + projectName);
     593  0
             sink.title_();
     594  0
             sink.head_();
     595  0
             sink.body();
     596  0
             sink.rawText("<script type=\"text/javascript\">");
     597  0
             sink.rawText("function toggleElement(el, targetId) {");
     598  0
             sink.rawText("if (el.innerText == '[+]') {");
     599  0
             sink.rawText("    el.innerText = '[-]';");
     600  0
             sink.rawText("    document.getElementById(targetId).style.display='block';");
     601  0
             sink.rawText("} else {");
     602  0
             sink.rawText("    el.innerText = '[+]';");
     603  0
             sink.rawText("    document.getElementById(targetId).style.display='none';");
     604  0
             sink.rawText("}");
     605  
     
     606  0
             sink.rawText("}");
     607  0
             sink.rawText("</script>");
     608  0
             sink.section1();
     609  0
             sink.sectionTitle1();
     610  0
             sink.text("Project: " + projectName);
     611  0
             sink.sectionTitle1_();
     612  0
             sink.date();
     613  0
             final Date now = new Date();
     614  0
             sink.text(DateFormat.getDateTimeInstance().format(now));
     615  0
             sink.date_();
     616  0
             sink.section1_();
     617  0
         }
     618  
         // </editor-fold>
     619  
     
     620  
         /**
     621  
          * Takes the properties supplied and updates the dependency-check settings.
     622  
          * Additionally, this sets the system properties required to change the
     623  
          * proxy url, port, and connection timeout.
     624  
          */
     625  
         private void populateSettings() {
     626  0
             InputStream mojoProperties = null;
     627  
             try {
     628  0
                 mojoProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
     629  0
                 Settings.mergeProperties(mojoProperties);
     630  0
             } catch (IOException ex) {
     631  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
     632  0
                 Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINE, null, ex);
     633  
             } finally {
     634  0
                 if (mojoProperties != null) {
     635  
                     try {
     636  0
                         mojoProperties.close();
     637  0
                     } catch (IOException ex) {
     638  0
                         Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINEST, null, ex);
     639  0
                     }
     640  
                 }
     641  
             }
     642  
     
     643  0
             Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
     644  
     
     645  0
             if (proxyUrl != null && !proxyUrl.isEmpty()) {
     646  0
                 Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
     647  
             }
     648  0
             if (proxyPort != null && !proxyPort.isEmpty()) {
     649  0
                 Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
     650  
             }
     651  0
             if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
     652  0
                 Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
     653  
             }
     654  0
         }
     655  
     
     656  
         /**
     657  
          * Executes the dependency-check and generates the report.
     658  
          *
     659  
          * @throws MojoExecutionException if a maven exception occurs
     660  
          * @throws MojoFailureException thrown if a CVSS score is found that is
     661  
          * higher then the configured level
     662  
          */
     663  
         public void execute() throws MojoExecutionException, MojoFailureException {
     664  0
             final Engine engine = executeDependencyCheck();
     665  0
             generateExternalReports(engine);
     666  0
             if (this.failBuildOnCVSS <= 10) {
     667  0
                 checkForFailure(engine.getDependencies());
     668  
             }
     669  0
         }
     670  
     
     671  
         /**
     672  
          * Generates the Dependency-Check Site Report.
     673  
          *
     674  
          * @param sink the sink to write the report to
     675  
          * @param locale the locale to use when generating the report
     676  
          * @throws MavenReportException if a Maven report exception occurs
     677  
          */
     678  
         public void generate(@SuppressWarnings("deprecation") org.codehaus.doxia.sink.Sink sink,
     679  
                 Locale locale) throws MavenReportException {
     680  0
             generate((Sink) sink, null, locale);
     681  0
         }
     682  
     
     683  
         /**
     684  
          * Generates the Dependency-Check Site Report.
     685  
          *
     686  
          * @param sink the sink to write the report to
     687  
          * @param sinkFactory the sink factory
     688  
          * @param locale the locale to use when generating the report
     689  
          * @throws MavenReportException if a maven report exception occurs
     690  
          */
     691  
         public void generate(Sink sink, SinkFactory sinkFactory, Locale locale) throws MavenReportException {
     692  0
             final Engine engine = executeDependencyCheck();
     693  0
             generateMavenSiteReport(engine, sink);
     694  0
         }
     695  
     
     696  
         // <editor-fold defaultstate="collapsed" desc="required setter/getter methods">
     697  
         /**
     698  
          * Returns the output name.
     699  
          *
     700  
          * @return the output name
     701  
          */
     702  
         public String getOutputName() {
     703  0
             return reportName;
     704  
         }
     705  
     
     706  
         /**
     707  
          * Returns the category name.
     708  
          *
     709  
          * @return the category name
     710  
          */
     711  
         public String getCategoryName() {
     712  0
             return MavenReport.CATEGORY_PROJECT_REPORTS;
     713  
         }
     714  
     
     715  
         /**
     716  
          * Returns the report name.
     717  
          *
     718  
          * @param locale the location
     719  
          * @return the report name
     720  
          */
     721  
         public String getName(Locale locale) {
     722  0
             return name;
     723  
         }
     724  
     
     725  
         /**
     726  
          * Sets the Reporting output directory.
     727  
          *
     728  
          * @param directory the output directory
     729  
          */
     730  
         public void setReportOutputDirectory(File directory) {
     731  0
             reportOutputDirectory = directory;
     732  0
         }
     733  
     
     734  
         /**
     735  
          * Returns the output directory.
     736  
          *
     737  
          * @return the output directory
     738  
          */
     739  
         public File getReportOutputDirectory() {
     740  0
             return reportOutputDirectory;
     741  
         }
     742  
     
     743  
         /**
     744  
          * Gets the description of the Dependency-Check report to be displayed in
     745  
          * the Maven Generated Reports page.
     746  
          *
     747  
          * @param locale The Locale to get the description for
     748  
          * @return the description
     749  
          */
     750  
         public String getDescription(Locale locale) {
     751  0
             return description;
     752  
         }
     753  
     
     754  
         /**
     755  
          * Returns whether this is an external report.
     756  
          *
     757  
          * @return true or false;
     758  
          */
     759  
         public boolean isExternalReport() {
     760  0
             return externalReport;
     761  
         }
     762  
     
     763  
         /**
     764  
          * Returns whether or not the plugin can generate a report.
     765  
          *
     766  
          * @return true
     767  
          */
     768  
         public boolean canGenerateReport() {
     769  0
             return true;
     770  
         }
     771  
         // </editor-fold>
     772  
     
     773  
         /**
     774  
          * Checks to see if a vulnerability has been identified with a CVSS score
     775  
          * that is above the threshold set in the configuration.
     776  
          *
     777  
          * @param dependencies the list of dependency objects
     778  
          * @throws MojoFailureException thrown if a CVSS score is found that is
     779  
          * higher then the threshold set
     780  
          */
     781  
         private void checkForFailure(List<Dependency> dependencies) throws MojoFailureException {
     782  0
             final StringBuilder ids = new StringBuilder();
     783  0
             for (Dependency d : dependencies) {
     784  0
                 for (Vulnerability v : d.getVulnerabilities()) {
     785  0
                     if (v.getCvssScore() >= failBuildOnCVSS) {
     786  0
                         if (ids.length() == 0) {
     787  0
                             ids.append(v.getName());
     788  
                         } else {
     789  0
                             ids.append(", ").append(v.getName());
     790  
                         }
     791  
                     }
     792  
                 }
     793  
             }
     794  0
             if (ids.length() > 0) {
     795  0
                 final String msg = String.format("%n%nDependency-Check Failure:%n"
     796  
                         + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
     797  
                         + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
     798  0
                 throw new MojoFailureException(msg);
     799  
             }
     800  0
         }
     801  
     }
    + + + + diff --git a/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html new file mode 100644 index 000000000..c915bee2d --- /dev/null +++ b/dependency-check-maven/cobertura/org.owasp.dependencycheck.maven.HelpMojo.html @@ -0,0 +1,752 @@ + + + + +Coverage Report + + + + +
    Coverage Report - org.owasp.dependencycheck.maven.HelpMojo
    +
     
    + + + + +
    Classes in this File Line Coverage Branch Coverage Complexity
    HelpMojo
    0%
    0/148
    0%
    0/106
    5.267
    +
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     1  
     package org.owasp.dependencycheck.maven;
     2  
     
     3  
     import org.apache.maven.plugin.AbstractMojo;
     4  
     import org.apache.maven.plugin.MojoExecutionException;
     5  
     import org.apache.maven.plugins.annotations.Mojo;
     6  
     import org.apache.maven.plugins.annotations.Parameter;
     7  
     
     8  
     import org.w3c.dom.Document;
     9  
     import org.w3c.dom.Element;
     10  
     import org.w3c.dom.Node;
     11  
     import org.w3c.dom.NodeList;
     12  
     import org.xml.sax.SAXException;
     13  
     
     14  
     import javax.xml.parsers.DocumentBuilder;
     15  
     import javax.xml.parsers.DocumentBuilderFactory;
     16  
     import javax.xml.parsers.ParserConfigurationException;
     17  
     import java.io.IOException;
     18  
     import java.io.InputStream;
     19  
     import java.util.ArrayList;
     20  
     import java.util.Iterator;
     21  
     import java.util.List;
     22  
     
     23  
     /**
     24  
      * Display help information on dependency-check-maven.<br/>
     25  
      * Call <code>mvn dependency-check:help -Ddetail=true -Dgoal=&lt;goal-name&gt;</code> to display parameter details.
     26  
      * @author
     27  
      * @version
     28  
      */
     29  
     @Mojo( name = "help", requiresProject = false, threadSafe = true )
     30  0
     public class HelpMojo
     31  
         extends AbstractMojo
     32  
     {
     33  
         /**
     34  
          * If <code>true</code>, display all settable properties for each goal.
     35  
          *
     36  
          */
     37  
         @Parameter( property = "detail", defaultValue = "false" )
     38  
         private boolean detail;
     39  
     
     40  
         /**
     41  
          * The name of the goal for which to show help. If unspecified, all goals will be displayed.
     42  
          *
     43  
          */
     44  
         @Parameter( property = "goal" )
     45  
         private java.lang.String goal;
     46  
     
     47  
         /**
     48  
          * The maximum length of a display line, should be positive.
     49  
          *
     50  
          */
     51  
         @Parameter( property = "lineLength", defaultValue = "80" )
     52  
         private int lineLength;
     53  
     
     54  
         /**
     55  
          * The number of spaces per indentation level, should be positive.
     56  
          *
     57  
          */
     58  
         @Parameter( property = "indentSize", defaultValue = "2" )
     59  
         private int indentSize;
     60  
     
     61  
         // groupId/artifactId/plugin-help.xml
     62  
         private static final String PLUGIN_HELP_PATH = "/META-INF/maven/org.owasp/dependency-check-maven/plugin-help.xml";
     63  
     
     64  
         private Document build()
     65  
             throws MojoExecutionException
     66  
         {
     67  0
             getLog().debug( "load plugin-help.xml: " + PLUGIN_HELP_PATH );
     68  0
             InputStream is = getClass().getResourceAsStream( PLUGIN_HELP_PATH );
     69  
             try
     70  
             {
     71  0
                 DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
     72  0
                 DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
     73  0
                 return dBuilder.parse( is );
     74  
             }
     75  0
             catch ( IOException e )
     76  
             {
     77  0
                 throw new MojoExecutionException( e.getMessage(), e );
     78  
             }
     79  0
             catch ( ParserConfigurationException e )
     80  
             {
     81  0
                 throw new MojoExecutionException( e.getMessage(), e );
     82  
             }
     83  0
             catch ( SAXException e )
     84  
             {
     85  0
                 throw new MojoExecutionException( e.getMessage(), e );
     86  
             }
     87  
         }
     88  
     
     89  
         /**
     90  
          * {@inheritDoc}
     91  
          */
     92  
         public void execute()
     93  
             throws MojoExecutionException
     94  
         {
     95  0
             if ( lineLength <= 0 )
     96  
             {
     97  0
                 getLog().warn( "The parameter 'lineLength' should be positive, using '80' as default." );
     98  0
                 lineLength = 80;
     99  
             }
     100  0
             if ( indentSize <= 0 )
     101  
             {
     102  0
                 getLog().warn( "The parameter 'indentSize' should be positive, using '2' as default." );
     103  0
                 indentSize = 2;
     104  
             }
     105  
     
     106  0
             Document doc = build();
     107  
     
     108  0
             StringBuilder sb = new StringBuilder();
     109  0
             Node plugin = getSingleChild( doc, "plugin" );
     110  
     
     111  
     
     112  0
             String name = getValue( plugin, "name" );
     113  0
             String version = getValue( plugin, "version" );
     114  0
             String id = getValue( plugin, "groupId" ) + ":" + getValue( plugin, "artifactId" ) + ":" + version;
     115  0
             if ( isNotEmpty( name ) && !name.contains( id ) )
     116  
             {
     117  0
                 append( sb, name + " " + version, 0 );
     118  
             }
     119  
             else
     120  
             {
     121  0
                 if ( isNotEmpty( name ) )
     122  
                 {
     123  0
                     append( sb, name, 0 );
     124  
                 }
     125  
                 else
     126  
                 {
     127  0
                     append( sb, id, 0 );
     128  
                 }
     129  
             }
     130  0
             append( sb, getValue( plugin, "description" ), 1 );
     131  0
             append( sb, "", 0 );
     132  
     
     133  
             //<goalPrefix>plugin</goalPrefix>
     134  0
             String goalPrefix = getValue( plugin, "goalPrefix" );
     135  
     
     136  0
             Node mojos1 = getSingleChild( plugin, "mojos" );
     137  
     
     138  0
             List<Node> mojos = findNamedChild( mojos1, "mojo" );
     139  
     
     140  0
             if ( goal == null || goal.length() <= 0 )
     141  
             {
     142  0
                 append( sb, "This plugin has " + mojos.size() + ( mojos.size() > 1 ? " goals:" : " goal:" ), 0 );
     143  0
                 append( sb, "", 0 );
     144  
             }
     145  
     
     146  0
             for ( Node mojo : mojos )
     147  
             {
     148  0
                 writeGoal( sb, goalPrefix, (Element) mojo );
     149  
             }
     150  
     
     151  0
             if ( getLog().isInfoEnabled() )
     152  
             {
     153  0
                 getLog().info( sb.toString() );
     154  
             }
     155  0
         }
     156  
     
     157  
     
     158  
         private static boolean isNotEmpty( String string )
     159  
         {
     160  0
             return string != null && string.length() > 0;
     161  
         }
     162  
     
     163  
         private String getValue( Node node, String elementName )
     164  
             throws MojoExecutionException
     165  
         {
     166  0
             return getSingleChild( node, elementName ).getTextContent();
     167  
         }
     168  
     
     169  
         private Node getSingleChild( Node node, String elementName )
     170  
             throws MojoExecutionException
     171  
         {
     172  0
             List<Node> namedChild = findNamedChild( node, elementName );
     173  0
             if ( namedChild.isEmpty() )
     174  
             {
     175  0
                 throw new MojoExecutionException( "Could not find " + elementName + " in plugin-help.xml" );
     176  
             }
     177  0
             if ( namedChild.size() > 1 )
     178  
             {
     179  0
                 throw new MojoExecutionException( "Multiple " + elementName + " in plugin-help.xml" );
     180  
             }
     181  0
             return namedChild.get( 0 );
     182  
         }
     183  
     
     184  
         private List<Node> findNamedChild( Node node, String elementName )
     185  
         {
     186  0
             List<Node> result = new ArrayList<Node>();
     187  0
             NodeList childNodes = node.getChildNodes();
     188  0
             for ( int i = 0; i < childNodes.getLength(); i++ )
     189  
             {
     190  0
                 Node item = childNodes.item( i );
     191  0
                 if ( elementName.equals( item.getNodeName() ) )
     192  
                 {
     193  0
                     result.add( item );
     194  
                 }
     195  
             }
     196  0
             return result;
     197  
         }
     198  
     
     199  
         private Node findSingleChild( Node node, String elementName )
     200  
             throws MojoExecutionException
     201  
         {
     202  0
             List<Node> elementsByTagName = findNamedChild( node, elementName );
     203  0
             if ( elementsByTagName.isEmpty() )
     204  
             {
     205  0
                 return null;
     206  
             }
     207  0
             if ( elementsByTagName.size() > 1 )
     208  
             {
     209  0
                 throw new MojoExecutionException( "Multiple " + elementName + "in plugin-help.xml" );
     210  
             }
     211  0
             return elementsByTagName.get( 0 );
     212  
         }
     213  
     
     214  
         private void writeGoal( StringBuilder sb, String goalPrefix, Element mojo )
     215  
             throws MojoExecutionException
     216  
         {
     217  0
             String mojoGoal = getValue( mojo, "goal" );
     218  0
             Node configurationElement = findSingleChild( mojo, "configuration" );
     219  0
                     Node description = findSingleChild( mojo, "description" );
     220  0
             if ( goal == null || goal.length() <= 0 || mojoGoal.equals( goal ) )
     221  
             {
     222  0
                 append( sb, goalPrefix + ":" + mojoGoal, 0 );
     223  0
                 Node deprecated = findSingleChild( mojo, "deprecated" );
     224  0
                 if ( ( deprecated != null ) && isNotEmpty( deprecated.getNodeValue() ) )
     225  
                 {
     226  0
                     append( sb, "Deprecated. " + deprecated, 1 );
     227  0
                     if ( detail && description != null )
     228  
                     {
     229  0
                         append( sb, "", 0 );
     230  0
                         append( sb, description.getTextContent(), 1 );
     231  
                     }
     232  
                 }
     233  0
                 else if (description != null )
     234  
                 {
     235  0
                     append( sb, description.getTextContent(), 1 );
     236  
                 }
     237  0
                 append( sb, "", 0 );
     238  
     
     239  0
                 if ( detail )
     240  
                 {
     241  0
                     Node parametersNode = getSingleChild( mojo, "parameters" );
     242  0
                     List<Node> parameters = findNamedChild( parametersNode, "parameter" );
     243  0
                     append( sb, "Available parameters:", 1 );
     244  0
                     append( sb, "", 0 );
     245  
     
     246  0
                     for ( Node parameter : parameters )
     247  
                     {
     248  0
                         writeParameter( sb, parameter, configurationElement );
     249  
                     }
     250  
                 }
     251  
             }
     252  0
         }
     253  
     
     254  
         private void writeParameter( StringBuilder sb, Node parameter, Node configurationElement )
     255  
             throws MojoExecutionException
     256  
         {
     257  0
             String parameterName = getValue( parameter, "name" );
     258  0
             String parameterDescription = getValue( parameter, "description" );
     259  
     
     260  0
             Node fieldConfigurationElement = findSingleChild( configurationElement, parameterName );
     261  
     
     262  0
             String parameterDefaultValue = "";
     263  0
             if ( fieldConfigurationElement != null && fieldConfigurationElement.getNodeValue() != null )
     264  
             {
     265  0
                 parameterDefaultValue = " (Default: " + ((Element)fieldConfigurationElement).getAttribute( "default-value" ) + ")";
     266  
             }
     267  0
             append( sb, parameterName + parameterDefaultValue, 2 );
     268  0
             Node deprecated = findSingleChild( parameter, "deprecated" );
     269  0
             if ( ( deprecated != null ) && isNotEmpty( deprecated.getNodeValue() ) )
     270  
             {
     271  0
                 append( sb, "Deprecated. " + deprecated.getNodeValue(), 3 );
     272  0
                 append( sb, "", 0 );
     273  
             }
     274  0
             append( sb, parameterDescription, 3 );
     275  0
             if ( "true".equals( getValue( parameter, "required" ) ) )
     276  
             {
     277  0
                 append( sb, "Required: Yes", 3 );
     278  
             }
     279  0
             Node expression = findSingleChild( parameter, "expression" );
     280  0
             if ( ( expression != null ) && isNotEmpty( expression.getNodeValue() ) )
     281  
             {
     282  0
                     String property = getPropertyFromExpression( expression.getNodeValue() );
     283  0
                 append( sb, "User property: " + property, 3 );
     284  
             }
     285  
     
     286  0
             append( sb, "", 0 );
     287  0
         }
     288  
     
     289  
         /**
     290  
          * <p>Repeat a String <code>n</code> times to form a new string.</p>
     291  
          *
     292  
          * @param str    String to repeat
     293  
          * @param repeat number of times to repeat str
     294  
          * @return String with repeated String
     295  
          * @throws NegativeArraySizeException if <code>repeat < 0</code>
     296  
          * @throws NullPointerException       if str is <code>null</code>
     297  
          */
     298  
         private static String repeat( String str, int repeat )
     299  
         {
     300  0
             StringBuilder buffer = new StringBuilder( repeat * str.length() );
     301  
     
     302  0
             for ( int i = 0; i < repeat; i++ )
     303  
             {
     304  0
                 buffer.append( str );
     305  
             }
     306  
     
     307  0
             return buffer.toString();
     308  
         }
     309  
     
     310  
         /**
     311  
          * Append a description to the buffer by respecting the indentSize and lineLength parameters.
     312  
          * <b>Note</b>: The last character is always a new line.
     313  
          *
     314  
          * @param sb          The buffer to append the description, not <code>null</code>.
     315  
          * @param description The description, not <code>null</code>.
     316  
          * @param indent      The base indentation level of each line, must not be negative.
     317  
          */
     318  
         private void append( StringBuilder sb, String description, int indent )
     319  
         {
     320  0
             for ( String line : toLines( description, indent, indentSize, lineLength ) )
     321  
             {
     322  0
                 sb.append( line ).append( '\n' );
     323  
             }
     324  0
         }
     325  
     
     326  
         /**
     327  
          * Splits the specified text into lines of convenient display length.
     328  
          *
     329  
          * @param text       The text to split into lines, must not be <code>null</code>.
     330  
          * @param indent     The base indentation level of each line, must not be negative.
     331  
          * @param indentSize The size of each indentation, must not be negative.
     332  
          * @param lineLength The length of the line, must not be negative.
     333  
          * @return The sequence of display lines, never <code>null</code>.
     334  
          * @throws NegativeArraySizeException if <code>indent < 0</code>
     335  
          */
     336  
         private static List<String> toLines( String text, int indent, int indentSize, int lineLength )
     337  
         {
     338  0
             List<String> lines = new ArrayList<String>();
     339  
     
     340  0
             String ind = repeat( "\t", indent );
     341  
     
     342  0
             String[] plainLines = text.split( "(\r\n)|(\r)|(\n)" );
     343  
     
     344  0
             for ( String plainLine : plainLines )
     345  
             {
     346  0
                 toLines( lines, ind + plainLine, indentSize, lineLength );
     347  
             }
     348  
     
     349  0
             return lines;
     350  
         }
     351  
     
     352  
         /**
     353  
          * Adds the specified line to the output sequence, performing line wrapping if necessary.
     354  
          *
     355  
          * @param lines      The sequence of display lines, must not be <code>null</code>.
     356  
          * @param line       The line to add, must not be <code>null</code>.
     357  
          * @param indentSize The size of each indentation, must not be negative.
     358  
          * @param lineLength The length of the line, must not be negative.
     359  
          */
     360  
         private static void toLines( List<String> lines, String line, int indentSize, int lineLength )
     361  
         {
     362  0
             int lineIndent = getIndentLevel( line );
     363  0
             StringBuilder buf = new StringBuilder( 256 );
     364  
     
     365  0
             String[] tokens = line.split( " +" );
     366  
     
     367  0
             for ( String token : tokens )
     368  
             {
     369  0
                 if ( buf.length() > 0 )
     370  
                 {
     371  0
                     if ( buf.length() + token.length() >= lineLength )
     372  
                     {
     373  0
                         lines.add( buf.toString() );
     374  0
                         buf.setLength( 0 );
     375  0
                         buf.append( repeat( " ", lineIndent * indentSize ) );
     376  
                     }
     377  
                     else
     378  
                     {
     379  0
                         buf.append( ' ' );
     380  
                     }
     381  
                 }
     382  
     
     383  0
                 for ( int j = 0; j < token.length(); j++ )
     384  
                 {
     385  0
                     char c = token.charAt( j );
     386  0
                     if ( c == '\t' )
     387  
                     {
     388  0
                         buf.append( repeat( " ", indentSize - buf.length() % indentSize ) );
     389  
                     }
     390  0
                     else if ( c == '\u00A0' )
     391  
                     {
     392  0
                         buf.append( ' ' );
     393  
                     }
     394  
                     else
     395  
                     {
     396  0
                         buf.append( c );
     397  
                     }
     398  
                 }
     399  
             }
     400  0
             lines.add( buf.toString() );
     401  0
         }
     402  
     
     403  
         /**
     404  
          * Gets the indentation level of the specified line.
     405  
          *
     406  
          * @param line The line whose indentation level should be retrieved, must not be <code>null</code>.
     407  
          * @return The indentation level of the line.
     408  
          */
     409  
         private static int getIndentLevel( String line )
     410  
         {
     411  0
             int level = 0;
     412  0
             for ( int i = 0; i < line.length() && line.charAt( i ) == '\t'; i++ )
     413  
             {
     414  0
                 level++;
     415  
             }
     416  0
             for ( int i = level + 1; i <= level + 4 && i < line.length(); i++ )
     417  
             {
     418  0
                 if ( line.charAt( i ) == '\t' )
     419  
                 {
     420  0
                     level++;
     421  0
                     break;
     422  
                 }
     423  
             }
     424  0
             return level;
     425  
         }
     426  
         
     427  
         private String getPropertyFromExpression( String expression )
     428  
         {
     429  0
             if ( expression != null && expression.startsWith( "${" ) && expression.endsWith( "}" )
     430  
                 && !expression.substring( 2 ).contains( "${" ) )
     431  
             {
     432  
                 // expression="${xxx}" -> property="xxx"
     433  0
                 return expression.substring( 2, expression.length() - 1 );
     434  
             }
     435  
             // no property can be extracted
     436  0
             return null;
     437  
         }
     438  
     }
    + + + + diff --git a/dependency-check-maven/configuration.html b/dependency-check-maven/configuration.html new file mode 100644 index 000000000..806decb65 --- /dev/null +++ b/dependency-check-maven/configuration.html @@ -0,0 +1,234 @@ + + + + + + + + + dependency-check-maven - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    Configuration

    +

    The following properties can be set on the dependency-check-maven plugin.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Property Description Default Value
    autoUpdate Sets whether auto-updating of the NVD CVE/CPE data is enabled. It is not recommended that this be turned to false. true
    externalReport When using as a Site plugin this parameter sets whether or not the external report format should be used. false
    failBuildOnCVSS Specifies if the build should be failed if a CVSS score above a specified level is identified. The default is 11 which means since the CVSS scores are 0-10, by default the build will never fail. 11
    format The report format to be generated (HTML, XML, VULN, ALL). This configuration option has no affect if using this within the Site plugin unless the externalReport is set to true. HTML
    connectionTimeout The Connection Timeout.
    proxyUrl The Proxy URL.
    proxyPort The Proxy Port.
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/cpd.html b/dependency-check-maven/cpd.html new file mode 100644 index 000000000..464def790 --- /dev/null +++ b/dependency-check-maven/cpd.html @@ -0,0 +1,258 @@ + + + + + + + + + dependency-check-maven - 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 © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/css/apache-maven-fluido-1.3.0.min.css b/dependency-check-maven/css/apache-maven-fluido-1.3.0.min.css new file mode 100644 index 000000000..7db41338d --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/css/print.css b/dependency-check-maven/css/print.css new file mode 100644 index 000000000..1cd02d9b4 --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/css/site.css b/dependency-check-maven/css/site.css new file mode 100644 index 000000000..055e7e286 --- /dev/null +++ b/dependency-check-maven/css/site.css @@ -0,0 +1 @@ +/* You can override this file with your own styles */ \ No newline at end of file diff --git a/dependency-check-maven/dependency-updates-report.html b/dependency-check-maven/dependency-updates-report.html new file mode 100644 index 000000000..f24f43134 --- /dev/null +++ b/dependency-check-maven/dependency-updates-report.html @@ -0,0 +1,609 @@ + + + + + + + + + dependency-check-maven - 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 available4
    # 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 update2
    # 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.mavenmaven-core3.0compilejar3.0.13.1.0
    org.apache.mavenmaven-plugin-api3.0compilejar3.0.13.1.0
    org.apache.maven.plugin-testingmaven-plugin-testing-harness2.1testjar
    org.apache.maven.plugin-toolsmaven-plugin-annotations3.0compilejar3.1
    org.apache.maven.pluginsmaven-site-plugin3.0compilejar3.1
    org.apache.maven.reportingmaven-reporting-api3.0compilejar
    org.owaspdependency-check-core1.0.1compilejar
    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.maven:maven-core

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven
    Artifact Idmaven-core
    Current Version3.0
    Scopecompile
    Classifier
    Typejar
    Newer versions3.0.1 Next Incremental
    3.0.2
    3.0.3
    3.0.4
    3.0.5
    3.1.0-alpha-1 Latest Incremental
    3.1.0 Next Minor
    +
    +

    org.apache.maven:maven-plugin-api

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven
    Artifact Idmaven-plugin-api
    Current Version3.0
    Scopecompile
    Classifier
    Typejar
    Newer versions3.0.1 Next Incremental
    3.0.2
    3.0.3
    3.0.4
    3.0.5
    3.1.0-alpha-1 Latest Incremental
    3.1.0 Next Minor
    +
    +

    org.apache.maven.plugin-testing:maven-plugin-testing-harness

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.plugin-testing
    Artifact Idmaven-plugin-testing-harness
    Current Version2.1
    Scopetest
    Classifier
    Typejar
    +
    +

    org.apache.maven.plugin-tools:maven-plugin-annotations

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugin-tools
    Artifact Idmaven-plugin-annotations
    Current Version3.0
    Scopecompile
    Classifier
    Typejar
    Newer versions3.1 Next Minor
    3.2 Latest Minor
    +
    +

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

    + + + + + + + + + + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-site-plugin
    Current Version3.0
    Scopecompile
    Classifier
    Typejar
    Newer versions3.1 Next Minor
    3.2
    3.3 Latest Minor
    +
    +

    org.apache.maven.reporting:maven-reporting-api

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.reporting
    Artifact Idmaven-reporting-api
    Current Version3.0
    Scopecompile
    Classifier
    Typejar
    +
    +

    org.owasp:dependency-check-core

    + + + + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.owasp
    Artifact Iddependency-check-core
    Current Version1.0.1
    Scopecompile
    Classifier
    Typejar
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/findbugs.html b/dependency-check-maven/findbugs.html new file mode 100644 index 000000000..913fa8141 --- /dev/null +++ b/dependency-check-maven/findbugs.html @@ -0,0 +1,295 @@ + + + + + + + + + dependency-check-maven - 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
    +
    +

    Files

    + + + + + + +
    ClassBugs
    org.owasp.dependencycheck.maven.HelpMojo1
    +
    +

    org.owasp.dependencycheck.maven.HelpMojo

    + + + + + + + + + + + + +
    BugCategoryDetailsLinePriority
    org.owasp.dependencycheck.maven.HelpMojo.build() may fail to clean up java.io.InputStreamEXPERIMENTALOBL_UNSATISFIED_OBLIGATION68Medium
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/help-mojo.html b/dependency-check-maven/help-mojo.html new file mode 100644 index 000000000..d27687455 --- /dev/null +++ b/dependency-check-maven/help-mojo.html @@ -0,0 +1,312 @@ + + + + + + + + + dependency-check-maven - + dependency-check:help + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + + +
    +

    dependency-check:help

    + +

    Full name:

    + +

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

    + +

    Description:

    + +
    Display help information on dependency-check-maven.
    +Call mvn dependency-check:help -Ddetail=true +-Dgoal=<goal-name> to display parameter details.
    + +

    Attributes:

    + +
      + +
    • The goal is thread-safe and supports parallel builds.
    • +
    + +
    +

    Optional Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameTypeSinceDescription
    detailboolean-If true, display all settable properties for each +goal.
    Default value is: false.
    User property is: detail.
    goalString-The name of the goal for which to show help. If unspecified, all +goals will be displayed.
    User property is: goal.
    indentSizeint-The number of spaces per indentation level, should be positive.
    Default value is: 2.
    User property is: indentSize.
    lineLengthint-The maximum length of a display line, should be positive.
    Default value is: 80.
    User property is: lineLength.
    +
    + +
    +

    Parameter Details

    + +

    detail:

    + +
    If true, display all settable properties for each +goal.
    + +
      + +
    • Type: boolean
    • + +
    • Required: No
    • + +
    • User Property: detail
    • + +
    • Default: false
    • +

    +

    goal:

    + +
    The name of the goal for which to show help. If unspecified, all +goals will be displayed.
    + +
      + +
    • Type: java.lang.String
    • + +
    • Required: No
    • + +
    • User Property: goal
    • +

    +

    indentSize:

    + +
    The number of spaces per indentation level, should be positive.
    + +
      + +
    • Type: int
    • + +
    • Required: No
    • + +
    • User Property: indentSize
    • + +
    • Default: 2
    • +

    +

    lineLength:

    + +
    The maximum length of a display line, should be positive.
    + +
      + +
    • Type: int
    • + +
    • Required: No
    • + +
    • User Property: lineLength
    • + +
    • Default: 80
    • +
    +
    +
    + + +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/images/accessories-text-editor.png b/dependency-check-maven/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/dependency-check-maven/images/add.gif b/dependency-check-maven/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/dependency-check-maven/images/apache-maven-project-2.png b/dependency-check-maven/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/dependency-check-maven/images/contact-new.png b/dependency-check-maven/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/dependency-check-maven/images/drive-harddisk.png b/dependency-check-maven/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/dependency-check-maven/images/icon_error_sml.gif b/dependency-check-maven/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/dependency-check-maven/images/icon_help_sml.gif b/dependency-check-maven/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/dependency-check-maven/images/icon_info_sml.gif b/dependency-check-maven/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/dependency-check-maven/images/icon_warning_sml.gif b/dependency-check-maven/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/dependency-check-maven/images/logos/build-by-maven-white.png b/dependency-check-maven/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/dependency-check-maven/images/logos/maven-feather.png b/dependency-check-maven/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/dependency-check-maven/images/network-server.png b/dependency-check-maven/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/dependency-check-maven/images/profiles/pre-release.png b/dependency-check-maven/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/dependency-check-maven/images/profiles/retired.png b/dependency-check-maven/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/dependency-check-maven/images/profiles/sandbox.png b/dependency-check-maven/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/dependency-check-maven/img/glyphicons-halflings.png b/dependency-check-maven/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/dependency-check-maven/index.html b/dependency-check-maven/index.html new file mode 100644 index 000000000..e198ce288 --- /dev/null +++ b/dependency-check-maven/index.html @@ -0,0 +1,185 @@ + + + + + + + + + dependency-check-maven - About + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    About dependency-check-maven

    +

    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 © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/js/apache-maven-fluido-1.3.0.min.js b/dependency-check-maven/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/dependency-check-maven/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-maven - 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 © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/plugin-info.html b/dependency-check-maven/plugin-info.html new file mode 100644 index 000000000..1013a779b --- /dev/null +++ b/dependency-check-maven/plugin-info.html @@ -0,0 +1,331 @@ + + + + + + + + + dependency-check-maven - Plugin Documentation + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Plugin Documentation

    +

    Goals available for this plugin:

    +
    + + + + + + + + + + + +
    GoalReport?Description
    dependency-check:checkYesMaven Plugin that checks project dependencies to see if they have +any known published vulnerabilities.
    dependency-check:helpNoDisplay help information on dependency-check-maven.
    +Call mvn dependency-check:help -Ddetail=true +-Dgoal=<goal-name> to display parameter details.
    +
    +

    System Requirements

    +

    The following specifies the minimum requirements to run this Maven plugin:

    + + + + + + + + + + + + +
    Maven3.0
    JDK1.6
    MemoryNo minimum requirement.
    Disk SpaceNo minimum requirement.
    +
    +

    Usage

    +

    You should specify the version in your project's plugin configuration:

    +
    +
    <project>
    +  ...
    +  <build>
    +    <!-- To define the plugin version in your parent POM -->
    +    <pluginManagement>
    +      <plugins>
    +        <plugin>
    +          <groupId>org.owasp</groupId>
    +          <artifactId>dependency-check-maven</artifactId>
    +          <version>1.0.1</version>
    +        </plugin>
    +        ...
    +      </plugins>
    +    </pluginManagement>
    +    <!-- To use the plugin goals in your POM or parent POM -->
    +    <plugins>
    +      <plugin>
    +        <groupId>org.owasp</groupId>
    +        <artifactId>dependency-check-maven</artifactId>
    +        <version>1.0.1</version>
    +      </plugin>
    +      ...
    +    </plugins>
    +  </build>
    +  ...
    +  <!-- To use the report goals in your POM or parent POM -->
    +  <reporting>
    +    <plugins>
    +      <plugin>
    +        <groupId>org.owasp</groupId>
    +        <artifactId>dependency-check-maven</artifactId>
    +        <version>1.0.1</version>
    +      </plugin>
    +      ...
    +    </plugins>
    +  </reporting>
    +  ...
    +</project>
    +
    +

    For more information, see "Guide to Configuring Plug-ins"

    + + + + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/plugin-updates-report.html b/dependency-check-maven/plugin-updates-report.html new file mode 100644 index 000000000..55567c738 --- /dev/null +++ b/dependency-check-maven/plugin-updates-report.html @@ -0,0 +1,850 @@ + + + + + + + + + dependency-check-maven - 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 available4
    # 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 update2
    # 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 version0
    +
    +

    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.7
    org.apache.maven.pluginsmaven-enforcer-plugin1.21.3
    org.apache.maven.pluginsmaven-gpg-plugin1.4
    org.apache.maven.pluginsmaven-install-plugin2.3.12.4
    org.apache.maven.pluginsmaven-jar-plugin2.3.12.3.22.4
    org.apache.maven.pluginsmaven-javadoc-plugin2.92.9.1
    org.apache.maven.pluginsmaven-plugin-plugin3.2
    org.apache.maven.pluginsmaven-resources-plugin2.52.6
    org.apache.maven.pluginsmaven-site-plugin3.3
    org.apache.maven.pluginsmaven-surefire-plugin2.102.11
    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
    +
    +

    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 No newer versions available.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-deploy-plugin
    Current Version2.7
    +
    +

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

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

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

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

    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
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer incremental version available. Incremental updates are typically passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-jar-plugin
    Current Version2.3.1
    Newer versions2.3.2 Next Incremental
    2.4 Next Minor
    +
    +

    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-plugin-plugin

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

    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 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.4jar
    StatusGroup IdArtifact IdCurrent VersionClassifierTypeNext VersionNext IncrementalNext MinorNext Major
    +
    +

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

    + + + + + + + + + + + + + + + + + + +
    Status No newer versions available.
    Group Idorg.apache.maven.doxia
    Artifact Iddoxia-module-markdown
    Current Version1.4
    Classifier
    Typejar
    +
    +

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

    + + + + + + + + + + + + + + + +
    Status There is at least one newer minor version available. Minor updates are sometimes passive.
    Group Idorg.apache.maven.plugins
    Artifact Idmaven-surefire-plugin
    Current Version2.10
    Newer versions2.11 Next Minor
    2.12
    2.12.1
    2.12.2
    2.12.3
    2.12.4
    2.13
    2.14
    2.14.1
    2.15 Latest Minor
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/pmd.html b/dependency-check-maven/pmd.html new file mode 100644 index 000000000..38057bf45 --- /dev/null +++ b/dependency-check-maven/pmd.html @@ -0,0 +1,275 @@ + + + + + + + + + dependency-check-maven - PMD Results + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    PMD Results

    +

    The following document contains the results of PMD 5.0.2.

    +
    +

    Files

    +
    +

    org/owasp/dependencycheck/maven/HelpMojo.java

    + + + + + + + + + + + + + + + +
    ViolationLine
    Avoid unused imports such as 'java.util.Iterator'20
    Useless parentheses.224
    Useless parentheses.269
    Useless parentheses.280
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/project-info.html b/dependency-check-maven/project-info.html new file mode 100644 index 000000000..16af65424 --- /dev/null +++ b/dependency-check-maven/project-info.html @@ -0,0 +1,200 @@ + + + + + + + + + dependency-check-maven - 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 © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/project-reports.html b/dependency-check-maven/project-reports.html new file mode 100644 index 000000000..3a878f7e2 --- /dev/null +++ b/dependency-check-maven/project-reports.html @@ -0,0 +1,300 @@ + + + + + + + + + dependency-check-maven - 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
    Plugin DocumentationThis report provides goals and parameters documentation of a plugin.
    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 © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/project-summary.html b/dependency-check-maven/project-summary.html new file mode 100644 index 000000000..d9d473576 --- /dev/null +++ b/dependency-check-maven/project-summary.html @@ -0,0 +1,232 @@ + + + + + + + + + dependency-check-maven - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    Namedependency-check-maven
    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.
    Homepagehttp://maven.apache.org
    +
    +

    Project Organization

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

    Build Information

    + + + + + + + + + + + + + + + + + + +
    FieldValue
    GroupIdorg.owasp
    ArtifactIddependency-check-maven
    Version1.0.1
    Typemaven-plugin
    JDK Rev1.6
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/surefire-report.html b/dependency-check-maven/surefire-report.html new file mode 100644 index 000000000..3b08e77e2 --- /dev/null +++ b/dependency-check-maven/surefire-report.html @@ -0,0 +1,342 @@ + + + + + + + + + dependency-check-maven - Surefire Report + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + + +
    +

    Surefire Report

    +
    +

    Summary

    +

    [Summary] [Package List] [Test Cases]


    + + + + + + + + + + + + + + +
    TestsErrors FailuresSkippedSuccess RateTime
    1000100%0.073

    +

    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.maven1000100%0.073

    +

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

    +
    +

    org.owasp.dependencycheck.maven

    + + + + + + + + + + + + + + + + + + +
    ClassTestsErrors FailuresSkippedSuccess RateTime
    DependencyCheckMojoTest1000100%0.073

    +
    +

    Test Cases

    +

    [Summary] [Package List] [Test Cases]

    +
    +

    DependencyCheckMojoTest

    + + + + +
    testGenerate_Sink_SinkFactory_Locale0.002

    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/taglist.html b/dependency-check-maven/taglist.html new file mode 100644 index 000000000..b86402e57 --- /dev/null +++ b/dependency-check-maven/taglist.html @@ -0,0 +1,317 @@ + + + + + + + + + dependency-check-maven - 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 Work13todo, FIXME
    +

    Each tag is detailed below:

    +
    +

    Todo Work

    +

    Number of occurrences found in the code: 13

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    org.owasp.dependencycheck.maven.DependencyCheckMojoLine
    add code to disable fine grained log file. Logger logger = LogManager.getLogManager().getLogger(""); for (Handler h : logger.getHandlers()) { if (h.getFormatter(). h.toString()); }175
    org.owasp.dependencycheck.maven.DependencyCheckMojoTestLine
    - figure out how to get the test harness to work. ATM no tests are running.34
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }68
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }82
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }115
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }129
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }144
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }157
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }171
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }186
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }200
    review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }214
    org.owasp.dependencycheck.maven.MySinkLine
    add HTML Encoding - or figure out how to get the doxia xhtmlsink to work.393
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/usage.html b/dependency-check-maven/usage.html new file mode 100644 index 000000000..b87b5f409 --- /dev/null +++ b/dependency-check-maven/usage.html @@ -0,0 +1,221 @@ + + + + + + + + + dependency-check-maven - + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +

    Usage

    +

    Dependency-check-maven is very simple to utilize and can be used as a stand-alone plugin or as part of the site plugin.

    +

    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 plugin is executed at least once every seven days the update will only take a few seconds.

    + +
    +
    <project>
    +    <build>
    +        <plugins>
    +            ...
    +            <plugin>
    +              <groupId>org.owasp</groupId>
    +              <artifactId>dependency-check-maven</artifactId>
    +              <version>1.0.1-SNAPSHOT</version>
    +              <configuration>
    +                  <failBuildOnCVSS>8</failBuildOnCVSS>
    +              </configuration>
    +              <executions>
    +                  <execution>
    +                      <goals>
    +                          <goal>check</goal>
    +                      </goals>
    +                  </execution>
    +              </executions>
    +            </plugin>
    +            ...
    +        </plugins>
    +        ...
    +    </build>
    +    ...
    +</project>
    +
    +

    Note, the above configuration will fail the build if any dependencies are found to have vulnerabilities with a CVSS score greater then 8. If you do not wish to fail the build for CVSS scores do not specify the failBuildOnCVSS element.

    + +
    +
    <project>
    +    <build>
    +        <plugins>
    +            ...
    +            <plugin>
    +                <groupId>org.apache.maven.plugins</groupId>
    +                <artifactId>maven-site-plugin</artifactId>
    +                <configuration>
    +                    <reportPlugins>
    +                        <plugin>
    +                            <groupId>org.owasp</groupId>
    +                            <artifactId>dependency-check-maven</artifactId>
    +                            <version>1.0.1-SNAPSHOT</version>
    +                            <configuration>
    +                                <externalReport>false</externalReport>
    +                            </configuration>
    +                        </plugin>
    +                    </reportPlugins>
    +                </configuration>
    +            </plugin>
    +            ...
    +        </plugins>
    +        ...
    +    </build>
    +    ...
    +</project>
    +
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/dependency-check-maven/xref-test/allclasses-frame.html b/dependency-check-maven/xref-test/allclasses-frame.html new file mode 100644 index 000000000..b3a1b3b3e --- /dev/null +++ b/dependency-check-maven/xref-test/allclasses-frame.html @@ -0,0 +1,23 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-maven/xref-test/index.html b/dependency-check-maven/xref-test/index.html new file mode 100644 index 000000000..ceab7329a --- /dev/null +++ b/dependency-check-maven/xref-test/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-maven 1.0.1 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/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/DependencyCheckMojoTest.html b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/DependencyCheckMojoTest.html new file mode 100644 index 000000000..2c4283a6e --- /dev/null +++ b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/DependencyCheckMojoTest.html @@ -0,0 +1,231 @@ + + + + +DependencyCheckMojoTest xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-maven.
    +3    *
    +4    * Dependency-check-maven 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-maven 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-maven. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.maven;
    +20  
    +21  import org.apache.maven.plugin.testing.AbstractMojoTestCase;
    +22  import java.io.FileOutputStream;
    +23  import java.io.OutputStream;
    +24  import java.io.File;
    +25  import java.util.Locale;
    +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   * TODO - figure out how to get the test harness to work. ATM no tests are
    +35   * running.
    +36   *
    +37   * @author Jeremy Long (jeremy.long@owasp.org)
    +38   */
    +39  public class DependencyCheckMojoTest extends AbstractMojoTestCase {
    +40  
    +41      public DependencyCheckMojoTest() {
    +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 execute method, of class DependencyCheckMojo.
    +62  //     */
    +63  //    @Test
    +64  //    public void testExecute() throws Exception {
    +65  //        System.out.println("execute");
    +66  //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +67  //        instance.execute();
    +68  //        // TODO review the generated test code and remove the default call to fail.
    +69  //        fail("The test case is a prototype.");
    +70  //    }
    +71  //
    +72  //    /**
    +73  //     * Test of generate method, of class DependencyCheckMojo.
    +74  //     */
    +75  //    @Test
    +76  //    public void testGenerate_Sink_Locale() throws Exception {
    +77  //        System.out.println("generate");
    +78  //        org.codehaus.doxia.sink.Sink sink = null;
    +79  //        Locale locale = null;
    +80  //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +81  //        instance.generate(sink, locale);
    +82  //        // TODO review the generated test code and remove the default call to fail.
    +83  //        fail("The test case is a prototype.");
    +84  //    }
    +85  
    +86      /**
    +87       * Test of generate method, of class DependencyCheckMojo.
    +88       */
    +89      @Test
    +90      public void testGenerate_Sink_SinkFactory_Locale() throws Exception {
    +91          //can't get the test-harness to work.
    +92  //        File samplePom = new File(this.getClass().getClassLoader().getResource("sample.xml").toURI());
    +93  //        DependencyCheckMojo mojo = (DependencyCheckMojo) lookupMojo("check", samplePom);
    +94  //        assertNotNull("Unable to load mojo", mojo);
    +95  //
    +96  //        File out = mojo.getReportOutputDirectory();
    +97  //        OutputStream os = new FileOutputStream(out);
    +98  //        MySink sink = new MySink(os);
    +99  //        Locale locale = new Locale("en");
    +100 //
    +101 //
    +102 //        mojo.generate(sink, null, locale);
    +103 //        sink.close();
    +104     }
    +105 //    /**
    +106 //     * Test of getOutputName method, of class DependencyCheckMojo.
    +107 //     */
    +108 //    @Test
    +109 //    public void testGetOutputName() {
    +110 //        System.out.println("getOutputName");
    +111 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +112 //        String expResult = "";
    +113 //        String result = instance.getOutputName();
    +114 //        assertEquals(expResult, result);
    +115 //        // TODO review the generated test code and remove the default call to fail.
    +116 //        fail("The test case is a prototype.");
    +117 //    }
    +118 //
    +119 //    /**
    +120 //     * Test of getCategoryName method, of class DependencyCheckMojo.
    +121 //     */
    +122 //    @Test
    +123 //    public void testGetCategoryName() {
    +124 //        System.out.println("getCategoryName");
    +125 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +126 //        String expResult = "";
    +127 //        String result = instance.getCategoryName();
    +128 //        assertEquals(expResult, result);
    +129 //        // TODO review the generated test code and remove the default call to fail.
    +130 //        fail("The test case is a prototype.");
    +131 //    }
    +132 //
    +133 //    /**
    +134 //     * Test of getName method, of class DependencyCheckMojo.
    +135 //     */
    +136 //    @Test
    +137 //    public void testGetName() {
    +138 //        System.out.println("getName");
    +139 //        Locale locale = null;
    +140 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +141 //        String expResult = "";
    +142 //        String result = instance.getName(locale);
    +143 //        assertEquals(expResult, result);
    +144 //        // TODO review the generated test code and remove the default call to fail.
    +145 //        fail("The test case is a prototype.");
    +146 //    }
    +147 //
    +148 //    /**
    +149 //     * Test of setReportOutputDirectory method, of class DependencyCheckMojo.
    +150 //     */
    +151 //    @Test
    +152 //    public void testSetReportOutputDirectory() {
    +153 //        System.out.println("setReportOutputDirectory");
    +154 //        File directory = null;
    +155 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +156 //        instance.setReportOutputDirectory(directory);
    +157 //        // TODO review the generated test code and remove the default call to fail.
    +158 //        fail("The test case is a prototype.");
    +159 //    }
    +160 //
    +161 //    /**
    +162 //     * Test of getReportOutputDirectory method, of class DependencyCheckMojo.
    +163 //     */
    +164 //    @Test
    +165 //    public void testGetReportOutputDirectory() {
    +166 //        System.out.println("getReportOutputDirectory");
    +167 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +168 //        File expResult = null;
    +169 //        File result = instance.getReportOutputDirectory();
    +170 //        assertEquals(expResult, result);
    +171 //        // TODO review the generated test code and remove the default call to fail.
    +172 //        fail("The test case is a prototype.");
    +173 //    }
    +174 //
    +175 //    /**
    +176 //     * Test of getDescription method, of class DependencyCheckMojo.
    +177 //     */
    +178 //    @Test
    +179 //    public void testGetDescription() {
    +180 //        System.out.println("getDescription");
    +181 //        Locale locale = null;
    +182 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +183 //        String expResult = "";
    +184 //        String result = instance.getDescription(locale);
    +185 //        assertEquals(expResult, result);
    +186 //        // TODO review the generated test code and remove the default call to fail.
    +187 //        fail("The test case is a prototype.");
    +188 //    }
    +189 //
    +190 //    /**
    +191 //     * Test of isExternalReport method, of class DependencyCheckMojo.
    +192 //     */
    +193 //    @Test
    +194 //    public void testIsExternalReport() {
    +195 //        System.out.println("isExternalReport");
    +196 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +197 //        boolean expResult = false;
    +198 //        boolean result = instance.isExternalReport();
    +199 //        assertEquals(expResult, result);
    +200 //        // TODO review the generated test code and remove the default call to fail.
    +201 //        fail("The test case is a prototype.");
    +202 //    }
    +203 //
    +204 //    /**
    +205 //     * Test of canGenerateReport method, of class DependencyCheckMojo.
    +206 //     */
    +207 //    @Test
    +208 //    public void testCanGenerateReport() {
    +209 //        System.out.println("canGenerateReport");
    +210 //        DependencyCheckMojo instance = new DependencyCheckMojo();
    +211 //        boolean expResult = false;
    +212 //        boolean result = instance.canGenerateReport();
    +213 //        assertEquals(expResult, result);
    +214 //        // TODO review the generated test code and remove the default call to fail.
    +215 //        fail("The test case is a prototype.");
    +216 //    }
    +217 }
    +
    +
    + + diff --git a/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/MySink.html b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/MySink.html new file mode 100644 index 000000000..f967eb73b --- /dev/null +++ b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/MySink.html @@ -0,0 +1,613 @@ + + + + +MySink xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-maven.
    +3    *
    +4    * Dependency-check-maven 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-maven 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-maven. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.maven;
    +20  
    +21  import java.io.IOException;
    +22  import java.io.OutputStream;
    +23  import java.io.OutputStreamWriter;
    +24  import java.util.logging.Level;
    +25  import java.util.logging.Logger;
    +26  import org.apache.maven.doxia.logging.Log;
    +27  import org.apache.maven.doxia.sink.Sink;
    +28  import org.apache.maven.doxia.sink.SinkEventAttributes;
    +29  
    +30  /**
    +31   *
    +32   * @author Jeremy Long (jeremy.long@owasp.org)
    +33   */
    +34  public class MySink implements Sink {
    +35  
    +36      private OutputStreamWriter out = null;
    +37  
    +38      public MySink(OutputStream os) {
    +39          out = new OutputStreamWriter(os);
    +40  
    +41      }
    +42  
    +43      private void writeTag(String tag) {
    +44          try {
    +45              out.write(tag);
    +46          } catch (IOException ex) {
    +47              Logger.getLogger(MySink.class.getName()).log(Level.SEVERE, null, ex);
    +48          }
    +49      }
    +50  
    +51      public void head() {
    +52          writeTag("<head>");
    +53      }
    +54  
    +55      public void head_() {
    +56          writeTag("</head>");
    +57      }
    +58  
    +59      public void title() {
    +60          writeTag("<title>");
    +61      }
    +62  
    +63      public void title_() {
    +64          writeTag("</title>");
    +65      }
    +66  
    +67      public void author() {
    +68          writeTag("<author>");
    +69      }
    +70  
    +71      public void author_() {
    +72          writeTag("</author>");
    +73      }
    +74  
    +75      public void date() {
    +76          writeTag("<time>");
    +77      }
    +78  
    +79      public void date_() {
    +80          writeTag("</time>");
    +81      }
    +82  
    +83      public void body() {
    +84          writeTag("<body>");
    +85      }
    +86  
    +87      public void body_() {
    +88          writeTag("</body>");
    +89      }
    +90  
    +91      public void sectionTitle() {
    +92          writeTag("<h1>");
    +93      }
    +94  
    +95      public void sectionTitle_() {
    +96          writeTag("</h1>");
    +97      }
    +98  
    +99      public void section1() {
    +100         writeTag("<div>");
    +101     }
    +102 
    +103     public void section1_() {
    +104         writeTag("</div>");
    +105     }
    +106 
    +107     public void sectionTitle1() {
    +108         writeTag("<h2>");
    +109     }
    +110 
    +111     public void sectionTitle1_() {
    +112         writeTag("</h2>");
    +113     }
    +114 
    +115     public void section2() {
    +116         writeTag("<div>");
    +117     }
    +118 
    +119     public void section2_() {
    +120         writeTag("</div>");
    +121     }
    +122 
    +123     public void sectionTitle2() {
    +124         writeTag("<h3>");
    +125     }
    +126 
    +127     public void sectionTitle2_() {
    +128         writeTag("</h3>");
    +129     }
    +130 
    +131     public void section3() {
    +132         writeTag("<div>");
    +133     }
    +134 
    +135     public void section3_() {
    +136         writeTag("</div>");
    +137     }
    +138 
    +139     public void sectionTitle3() {
    +140         writeTag("<h4>");
    +141     }
    +142 
    +143     public void sectionTitle3_() {
    +144         writeTag("</h4>");
    +145     }
    +146 
    +147     public void section4() {
    +148         writeTag("<div>");
    +149     }
    +150 
    +151     public void section4_() {
    +152         writeTag("</div>");
    +153     }
    +154 
    +155     public void sectionTitle4() {
    +156         writeTag("<h5>");
    +157     }
    +158 
    +159     public void sectionTitle4_() {
    +160         writeTag("</h5>");
    +161     }
    +162 
    +163     public void section5() {
    +164         writeTag("<div>");
    +165     }
    +166 
    +167     public void section5_() {
    +168         writeTag("</div>");
    +169     }
    +170 
    +171     public void sectionTitle5() {
    +172         writeTag("<h6>");
    +173     }
    +174 
    +175     public void sectionTitle5_() {
    +176         writeTag("</h6>");
    +177     }
    +178 
    +179     public void list() {
    +180         writeTag("<ul>");
    +181     }
    +182 
    +183     public void list_() {
    +184         writeTag("</ul>");
    +185     }
    +186 
    +187     public void listItem() {
    +188         writeTag("<li>");
    +189     }
    +190 
    +191     public void listItem_() {
    +192         writeTag("</li>");
    +193     }
    +194 
    +195     public void numberedList(int numbering) {
    +196         writeTag("<ol>");
    +197     }
    +198 
    +199     public void numberedList_() {
    +200         writeTag("</ol>");
    +201     }
    +202 
    +203     public void numberedListItem() {
    +204         writeTag("<li>");
    +205     }
    +206 
    +207     public void numberedListItem_() {
    +208         writeTag("</li>");
    +209     }
    +210 
    +211     public void definitionList() {
    +212         writeTag("<dl>");
    +213     }
    +214 
    +215     public void definitionList_() {
    +216         writeTag("</dl>");
    +217     }
    +218 
    +219     public void definitionListItem() {
    +220         writeTag("<dt>");
    +221     }
    +222 
    +223     public void definitionListItem_() {
    +224         writeTag("</dt>");
    +225     }
    +226 
    +227     public void definition() {
    +228         writeTag("<dd>");
    +229     }
    +230 
    +231     public void definition_() {
    +232         writeTag("</dd>");
    +233     }
    +234 
    +235     public void definedTerm() {
    +236         writeTag("<dt>");
    +237     }
    +238 
    +239     public void definedTerm_() {
    +240         writeTag("</dt>");
    +241     }
    +242 
    +243     public void figure() {
    +244         throw new UnsupportedOperationException("Not supported yet.");
    +245     }
    +246 
    +247     public void figure_() {
    +248         throw new UnsupportedOperationException("Not supported yet.");
    +249     }
    +250 
    +251     public void figureCaption() {
    +252         throw new UnsupportedOperationException("Not supported yet.");
    +253     }
    +254 
    +255     public void figureCaption_() {
    +256         throw new UnsupportedOperationException("Not supported yet.");
    +257     }
    +258 
    +259     public void figureGraphics(String name) {
    +260         throw new UnsupportedOperationException("Not supported yet.");
    +261     }
    +262 
    +263     public void table() {
    +264         writeTag("<table>");
    +265     }
    +266 
    +267     public void table_() {
    +268         writeTag("</table>");
    +269     }
    +270 
    +271     public void tableRows(int[] justification, boolean grid) {
    +272         writeTag("<tr>");
    +273     }
    +274 
    +275     public void tableRows_() {
    +276         writeTag("</tr>");
    +277     }
    +278 
    +279     public void tableRow() {
    +280         writeTag("<tr>");
    +281     }
    +282 
    +283     public void tableRow_() {
    +284         writeTag("</tr>");
    +285     }
    +286 
    +287     public void tableCell() {
    +288         writeTag("<td>");
    +289     }
    +290 
    +291     public void tableCell(String width) {
    +292         writeTag("<td>");
    +293     }
    +294 
    +295     public void tableCell_() {
    +296         writeTag("</td>");
    +297     }
    +298 
    +299     public void tableHeaderCell() {
    +300         writeTag("<th>");
    +301     }
    +302 
    +303     public void tableHeaderCell(String width) {
    +304         writeTag("<th>");
    +305     }
    +306 
    +307     public void tableHeaderCell_() {
    +308         writeTag("</th>");
    +309     }
    +310 
    +311     public void tableCaption() {
    +312         writeTag("<caption>");
    +313     }
    +314 
    +315     public void tableCaption_() {
    +316         writeTag("</caption>");
    +317     }
    +318 
    +319     public void paragraph() {
    +320         writeTag("<p>");
    +321     }
    +322 
    +323     public void paragraph_() {
    +324         writeTag("</p>");
    +325     }
    +326 
    +327     public void verbatim(boolean boxed) {
    +328         writeTag("<pre>");
    +329     }
    +330 
    +331     public void verbatim_() {
    +332         writeTag("</pre>");
    +333     }
    +334 
    +335     public void horizontalRule() {
    +336         writeTag("<hr/>");
    +337     }
    +338 
    +339     public void pageBreak() {
    +340         writeTag("<br/>");
    +341     }
    +342 
    +343     public void anchor(String name) {
    +344         writeTag("<a href=\"" + name + "\">");
    +345     }
    +346 
    +347     public void anchor_() {
    +348         writeTag("</a>");
    +349     }
    +350 
    +351     public void link(String name) {
    +352         writeTag("<link href=\"" + name + "\">");
    +353     }
    +354 
    +355     public void link_() {
    +356         writeTag("</link>");
    +357     }
    +358 
    +359     public void italic() {
    +360         writeTag("<i>");
    +361     }
    +362 
    +363     public void italic_() {
    +364         writeTag("</i>");
    +365     }
    +366 
    +367     public void bold() {
    +368         writeTag("<b>");
    +369     }
    +370 
    +371     public void bold_() {
    +372         writeTag("</b>");
    +373     }
    +374 
    +375     public void monospaced() {
    +376         writeTag("<pre>");
    +377     }
    +378 
    +379     public void monospaced_() {
    +380         writeTag("</pre>");
    +381     }
    +382 
    +383     public void lineBreak() {
    +384         writeTag("<br>");
    +385     }
    +386 
    +387     public void nonBreakingSpace() {
    +388         writeTag("&nbsp;");
    +389     }
    +390 
    +391     public void text(String text) {
    +392         try {
    +393             //TODO add HTML Encoding - or figure out how to get the doxia xhtmlsink to work.
    +394             out.write(text);
    +395         } catch (IOException ex) {
    +396             Logger.getLogger(MySink.class.getName()).log(Level.SEVERE, null, ex);
    +397         }
    +398     }
    +399 
    +400     public void rawText(String text) {
    +401         try {
    +402             out.write(text);
    +403         } catch (IOException ex) {
    +404             Logger.getLogger(MySink.class.getName()).log(Level.SEVERE, null, ex);
    +405         }
    +406     }
    +407 
    +408     public void flush() {
    +409         try {
    +410             out.flush();
    +411         } catch (IOException ex) {
    +412             Logger.getLogger(MySink.class.getName()).log(Level.FINEST, null, ex);
    +413         }
    +414     }
    +415 
    +416     public void close() {
    +417         flush();
    +418         try {
    +419             out.close();
    +420         } catch (IOException ex) {
    +421             Logger.getLogger(MySink.class.getName()).log(Level.FINEST, null, ex);
    +422         }
    +423     }
    +424 
    +425     @Override
    +426     public void head(SinkEventAttributes sea) {
    +427         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +428     }
    +429 
    +430     @Override
    +431     public void title(SinkEventAttributes sea) {
    +432         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +433     }
    +434 
    +435     @Override
    +436     public void author(SinkEventAttributes sea) {
    +437         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +438     }
    +439 
    +440     @Override
    +441     public void date(SinkEventAttributes sea) {
    +442         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +443     }
    +444 
    +445     @Override
    +446     public void body(SinkEventAttributes sea) {
    +447         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +448     }
    +449 
    +450     @Override
    +451     public void section(int i, SinkEventAttributes sea) {
    +452         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +453     }
    +454 
    +455     @Override
    +456     public void section_(int i) {
    +457         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +458     }
    +459 
    +460     @Override
    +461     public void sectionTitle(int i, SinkEventAttributes sea) {
    +462         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +463     }
    +464 
    +465     @Override
    +466     public void sectionTitle_(int i) {
    +467         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +468     }
    +469 
    +470     @Override
    +471     public void list(SinkEventAttributes sea) {
    +472         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +473     }
    +474 
    +475     @Override
    +476     public void listItem(SinkEventAttributes sea) {
    +477         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +478     }
    +479 
    +480     @Override
    +481     public void numberedList(int i, SinkEventAttributes sea) {
    +482         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +483     }
    +484 
    +485     @Override
    +486     public void numberedListItem(SinkEventAttributes sea) {
    +487         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +488     }
    +489 
    +490     @Override
    +491     public void definitionList(SinkEventAttributes sea) {
    +492         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +493     }
    +494 
    +495     @Override
    +496     public void definitionListItem(SinkEventAttributes sea) {
    +497         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +498     }
    +499 
    +500     @Override
    +501     public void definition(SinkEventAttributes sea) {
    +502         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +503     }
    +504 
    +505     @Override
    +506     public void definedTerm(SinkEventAttributes sea) {
    +507         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +508     }
    +509 
    +510     @Override
    +511     public void figure(SinkEventAttributes sea) {
    +512         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +513     }
    +514 
    +515     @Override
    +516     public void figureCaption(SinkEventAttributes sea) {
    +517         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +518     }
    +519 
    +520     @Override
    +521     public void figureGraphics(String string, SinkEventAttributes sea) {
    +522         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +523     }
    +524 
    +525     @Override
    +526     public void table(SinkEventAttributes sea) {
    +527         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +528     }
    +529 
    +530     @Override
    +531     public void tableRow(SinkEventAttributes sea) {
    +532         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +533     }
    +534 
    +535     @Override
    +536     public void tableCell(SinkEventAttributes sea) {
    +537         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +538     }
    +539 
    +540     @Override
    +541     public void tableHeaderCell(SinkEventAttributes sea) {
    +542         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +543     }
    +544 
    +545     @Override
    +546     public void tableCaption(SinkEventAttributes sea) {
    +547         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +548     }
    +549 
    +550     @Override
    +551     public void paragraph(SinkEventAttributes sea) {
    +552         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +553     }
    +554 
    +555     @Override
    +556     public void verbatim(SinkEventAttributes sea) {
    +557         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +558     }
    +559 
    +560     @Override
    +561     public void horizontalRule(SinkEventAttributes sea) {
    +562         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +563     }
    +564 
    +565     @Override
    +566     public void anchor(String string, SinkEventAttributes sea) {
    +567         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +568     }
    +569 
    +570     @Override
    +571     public void link(String string, SinkEventAttributes sea) {
    +572         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +573     }
    +574 
    +575     @Override
    +576     public void lineBreak(SinkEventAttributes sea) {
    +577         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +578     }
    +579 
    +580     @Override
    +581     public void text(String string, SinkEventAttributes sea) {
    +582         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +583     }
    +584 
    +585     @Override
    +586     public void comment(String string) {
    +587         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +588     }
    +589 
    +590     @Override
    +591     public void unknown(String string, Object[] os, SinkEventAttributes sea) {
    +592         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +593     }
    +594 
    +595     @Override
    +596     public void enableLogging(Log log) {
    +597         throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    +598     }
    +599 }
    +
    +
    + + diff --git a/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-frame.html b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-frame.html new file mode 100644 index 000000000..d5bc7be4c --- /dev/null +++ b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-maven 1.0.1 Reference Package org.owasp.dependencycheck.maven + + + + +

    + org.owasp.dependencycheck.maven +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-summary.html b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-summary.html new file mode 100644 index 000000000..4338714d2 --- /dev/null +++ b/dependency-check-maven/xref-test/org/owasp/dependencycheck/maven/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-maven 1.0.1 Reference Package org.owasp.dependencycheck.maven + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.maven

    + + + + + + + + + + + + + + + +
    Class Summary
    + DependencyCheckMojoTest +
    + MySink +
    + +
    + +
    +
    + +
    +
    + Copyright © 2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-maven/xref-test/overview-frame.html b/dependency-check-maven/xref-test/overview-frame.html new file mode 100644 index 000000000..fec3015bd --- /dev/null +++ b/dependency-check-maven/xref-test/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + dependency-check-maven 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-maven/xref-test/overview-summary.html b/dependency-check-maven/xref-test/overview-summary.html new file mode 100644 index 000000000..932ff2657 --- /dev/null +++ b/dependency-check-maven/xref-test/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + dependency-check-maven 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-maven 1.0.1 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.maven +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-maven/xref-test/stylesheet.css b/dependency-check-maven/xref-test/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/dependency-check-maven/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/dependency-check-maven/xref/allclasses-frame.html b/dependency-check-maven/xref/allclasses-frame.html new file mode 100644 index 000000000..120f00bcd --- /dev/null +++ b/dependency-check-maven/xref/allclasses-frame.html @@ -0,0 +1,23 @@ + + + + + + All Classes + + + + +

    All Classes

    + + + + + diff --git a/dependency-check-maven/xref/index.html b/dependency-check-maven/xref/index.html new file mode 100644 index 000000000..ceab7329a --- /dev/null +++ b/dependency-check-maven/xref/index.html @@ -0,0 +1,24 @@ + + + + + + dependency-check-maven 1.0.1 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/dependency-check-maven/xref/org/owasp/dependencycheck/maven/DependencyCheckMojo.html b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/DependencyCheckMojo.html new file mode 100644 index 000000000..548522e5b --- /dev/null +++ b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/DependencyCheckMojo.html @@ -0,0 +1,815 @@ + + + + +DependencyCheckMojo xref + + + +
    +
    +1   /*
    +2    * This file is part of dependency-check-maven.
    +3    *
    +4    * Dependency-check-maven 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-maven 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-maven. If not, see http://www.gnu.org/licenses/.
    +16   *
    +17   * Copyright (c) 2013 Jeremy Long. All Rights Reserved.
    +18   */
    +19  package org.owasp.dependencycheck.maven;
    +20  
    +21  import java.io.File;
    +22  import java.io.IOException;
    +23  import java.io.InputStream;
    +24  import java.io.UnsupportedEncodingException;
    +25  import java.net.URLEncoder;
    +26  import java.text.DateFormat;
    +27  import java.util.Date;
    +28  import java.util.List;
    +29  import java.util.Locale;
    +30  import java.util.logging.Level;
    +31  import java.util.logging.Logger;
    +32  import org.apache.maven.doxia.sink.SinkFactory;
    +33  import org.apache.maven.plugin.AbstractMojo;
    +34  import org.apache.maven.plugin.MojoExecutionException;
    +35  import org.apache.maven.project.MavenProject;
    +36  import java.util.Set;
    +37  import java.util.logging.LogManager;
    +38  import org.apache.maven.artifact.Artifact;
    +39  import org.apache.maven.plugins.annotations.Component;
    +40  import org.apache.maven.plugins.annotations.LifecyclePhase;
    +41  import org.apache.maven.plugins.annotations.Mojo;
    +42  import org.apache.maven.plugins.annotations.Parameter;
    +43  import org.apache.maven.plugins.annotations.ResolutionScope;
    +44  import org.apache.maven.reporting.MavenMultiPageReport;
    +45  import org.apache.maven.reporting.MavenReport;
    +46  import org.apache.maven.reporting.MavenReportException;
    +47  import org.apache.maven.doxia.sink.Sink;
    +48  import org.apache.maven.plugin.MojoFailureException;
    +49  import org.owasp.dependencycheck.Engine;
    +50  import org.owasp.dependencycheck.dependency.Dependency;
    +51  import org.owasp.dependencycheck.dependency.Evidence;
    +52  import org.owasp.dependencycheck.dependency.Identifier;
    +53  import org.owasp.dependencycheck.dependency.Reference;
    +54  import org.owasp.dependencycheck.dependency.Vulnerability;
    +55  import org.owasp.dependencycheck.dependency.VulnerableSoftware;
    +56  import org.owasp.dependencycheck.reporting.ReportGenerator;
    +57  import org.owasp.dependencycheck.utils.Settings;
    +58  
    +59  /**
    +60   * Maven Plugin that checks project dependencies to see if they have any known
    +61   * published vulnerabilities.
    +62   *
    +63   * @author Jeremy Long (jeremy.long@owasp.org)
    +64   */
    +65  @Mojo(name = "check", defaultPhase = LifecyclePhase.COMPILE, threadSafe = true,
    +66          requiresDependencyResolution = ResolutionScope.RUNTIME_PLUS_SYSTEM,
    +67          requiresOnline = true)
    +68  public class DependencyCheckMojo extends AbstractMojo implements MavenMultiPageReport {
    +69  
    +70      /**
    +71       * The properties file location.
    +72       */
    +73      private static final String PROPERTIES_FILE = "mojo.properties";
    +74      /**
    +75       * Name of the logging properties file.
    +76       */
    +77      private static final String LOG_PROPERTIES_FILE = "log.properties";
    +78      /**
    +79       * The name of the test scope.
    +80       */
    +81      public static final String TEST_SCOPE = "test";
    +82      // <editor-fold defaultstate="collapsed" desc="Maven bound parameters and components">
    +83      /**
    +84       * The Maven Project Object.
    +85       */
    +86      @Component
    +87      private MavenProject project;
    +88      /**
    +89       * The name of the site report destination.
    +90       */
    +91      @Parameter(property = "report-name", defaultValue = "dependency-check-report")
    +92      private String reportName;
    +93      /**
    +94       * The name of the report to be displayed in the Maven Generated Reports
    +95       * page
    +96       */
    +97      @Parameter(property = "name", defaultValue = "Dependency-Check")
    +98      private String name;
    +99      /**
    +100      * The description of the Dependency-Check report to be displayed in the
    +101      * Maven Generated Reports page
    +102      */
    +103     @Parameter(property = "description", defaultValue = "A report providing details on any published "
    +104             + "vulnerabilities within project dependencies. This report is a best effort but may contain "
    +105             + "false positives and false negatives.")
    +106     private String description;
    +107     /**
    +108      * Specifies the destination directory for the generated Dependency-Check
    +109      * report.
    +110      */
    +111     @Parameter(property = "reportOutputDirectory", defaultValue = "${project.reporting.outputDirectory}", required = true)
    +112     private File reportOutputDirectory;
    +113     /**
    +114      * Specifies if the build should be failed if a CVSS score above a specified
    +115      * level is identified. The default is 11 which means since the CVSS scores
    +116      * are 0-10, by default the build will never fail.
    +117      */
    +118     @Parameter(property = "failBuildOnCVSS", defaultValue = "11", required = true)
    +119     private float failBuildOnCVSS = 11;
    +120     /**
    +121      * The output directory.
    +122      */
    +123     @Parameter(defaultValue = "${project.build.directory}", required = true)
    +124     private File outputDirectory;
    +125     /**
    +126      * Sets whether auto-updating of the NVD CVE/CPE data is enabled. It is not
    +127      * recommended that this be turned to false. Default is true.
    +128      */
    +129     @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
    +130     @Parameter(property = "autoupdate", defaultValue = "true", required = true)
    +131     private boolean autoUpdate = true;
    +132     /**
    +133      * The report format to be generated (HTML, XML, VULN, ALL). This
    +134      * configuration option has no affect if using this within the Site plugin
    +135      * unless the externalReport is set to true. Default is HTML.
    +136      */
    +137     @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
    +138     @Parameter(property = "format", defaultValue = "HTML", required = true)
    +139     private String format = "HTML";
    +140     /**
    +141      * Sets whether or not the external report format should be used.
    +142      */
    +143     @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal"})
    +144     @Parameter(property = "externalReport", defaultValue = "false", required = true)
    +145     private boolean externalReport = false;
    +146     /**
    +147      * The Proxy URL.
    +148      */
    +149     @SuppressWarnings("CanBeFinal")
    +150     @Parameter(property = "proxyUrl", defaultValue = "", required = false)
    +151     private String proxyUrl = null;
    +152     /**
    +153      * The Proxy Port.
    +154      */
    +155     @SuppressWarnings("CanBeFinal")
    +156     @Parameter(property = "proxyPort", defaultValue = "", required = false)
    +157     private String proxyPort = null;
    +158     /**
    +159      * The Connection Timeout.
    +160      */
    +161     @SuppressWarnings("CanBeFinal")
    +162     @Parameter(property = "connectionTimeout", defaultValue = "", required = false)
    +163     private String connectionTimeout = null;
    +164 
    +165     // </editor-fold>
    +166     /**
    +167      * Configures the logger for use by the application.
    +168      */
    +169     private static void prepareLogger() {
    +170         InputStream in = null;
    +171         try {
    +172             in = DependencyCheckMojo.class.getClassLoader().getResourceAsStream(LOG_PROPERTIES_FILE);
    +173             LogManager.getLogManager().reset();
    +174             LogManager.getLogManager().readConfiguration(in);
    +175             //TODO add code to disable fine grained log file.
    +176 //            Logger logger = LogManager.getLogManager().getLogger("");
    +177 //            for (Handler h : logger.getHandlers()) {
    +178 //                if (h.getFormatter(). h.toString());
    +179 //            }
    +180         } catch (IOException ex) {
    +181             System.err.println(ex.toString());
    +182             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +183         } catch (SecurityException ex) {
    +184             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +185         } finally {
    +186             if (in != null) {
    +187                 try {
    +188                     in.close();
    +189                 } catch (Exception ex) {
    +190                     //noinspection UnusedAssignment
    +191                     in = null;
    +192                 }
    +193             }
    +194         }
    +195     }
    +196 
    +197     /**
    +198      * Executes the Dependency-Check on the dependent libraries.
    +199      *
    +200      * @return the Engine used to scan the dependencies.
    +201      */
    +202     private Engine executeDependencyCheck() {
    +203         prepareLogger();
    +204         populateSettings();
    +205         final Engine engine = new Engine();
    +206         final Set<Artifact> artifacts = project.getArtifacts();
    +207         for (Artifact a : artifacts) {
    +208             if (!TEST_SCOPE.equals(a.getScope())) {
    +209                 engine.scan(a.getFile().getAbsolutePath());
    +210             }
    +211         }
    +212         engine.analyzeDependencies();
    +213         return engine;
    +214     }
    +215 
    +216     /**
    +217      * Generates the reports for a given dependency-check engine.
    +218      *
    +219      * @param engine a dependency-check engine
    +220      */
    +221     private void generateExternalReports(Engine engine) {
    +222         final ReportGenerator r = new ReportGenerator(project.getName(), engine.getDependencies(), engine.getAnalyzers());
    +223         try {
    +224             r.generateReports(outputDirectory.getCanonicalPath(), format);
    +225         } catch (IOException ex) {
    +226             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +227         } catch (Exception ex) {
    +228             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.SEVERE, null, ex);
    +229         }
    +230     }
    +231 
    +232     /**
    +233      * Generates a dependency-check report using the Maven Site format.
    +234      *
    +235      * @param engine the engine used to scan the dependencies
    +236      * @param sink the sink to write the data to
    +237      */
    +238     private void generateMavenSiteReport(final Engine engine, Sink sink) {
    +239         final List<Dependency> dependencies = engine.getDependencies();
    +240 
    +241         writeSiteReportHeader(sink, project.getName());
    +242         writeSiteReportTOC(sink, dependencies);
    +243 
    +244         int cnt = 0;
    +245         for (Dependency d : dependencies) {
    +246             writeSiteReportDependencyHeader(sink, d);
    +247             cnt = writeSiteReportDependencyAnalysisExceptions(d, cnt, sink);
    +248             cnt = writeSiteReportDependencyEvidenceUsed(d, cnt, sink);
    +249             cnt = writeSiteReportDependencyRelatedDependencies(d, cnt, sink);
    +250             writeSiteReportDependencyIdentifiers(d, sink);
    +251             writeSiteReportDependencyVulnerabilities(d, sink, cnt);
    +252         }
    +253         sink.body_();
    +254     }
    +255 
    +256     // <editor-fold defaultstate="collapsed" desc="various writeXXXXX methods to generate the Site Report">
    +257     /**
    +258      * Writes the vulnerabilities to the site report.
    +259      *
    +260      * @param d the dependency
    +261      * @param sink the sink to write the data to
    +262      * @param collapsibleHeaderCount the collapsible header count
    +263      */
    +264     private void writeSiteReportDependencyVulnerabilities(Dependency d, Sink sink, int collapsibleHeaderCount) {
    +265         int cnt = collapsibleHeaderCount;
    +266         if (d.getVulnerabilities() != null && !d.getVulnerabilities().isEmpty()) {
    +267             for (Vulnerability v : d.getVulnerabilities()) {
    +268 
    +269                 sink.paragraph();
    +270                 sink.bold();
    +271                 try {
    +272                     sink.link("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + URLEncoder.encode(v.getName(), "US-ASCII"));
    +273                     sink.text(v.getName());
    +274                     sink.link_();
    +275                     sink.bold_();
    +276                 } catch (UnsupportedEncodingException ex) {
    +277                     sink.text(v.getName());
    +278                     sink.bold_();
    +279                     sink.lineBreak();
    +280                     sink.text("http://web.nvd.nist.gov/view/vuln/detail?vulnId=" + v.getName());
    +281                 }
    +282                 sink.paragraph_();
    +283                 sink.paragraph();
    +284                 sink.text("Severity: ");
    +285                 if (v.getCvssScore() < 4.0) {
    +286                     sink.text("Low");
    +287                 } else {
    +288                     if (v.getCvssScore() >= 7.0) {
    +289                         sink.text("High");
    +290                     } else {
    +291                         sink.text("Medium");
    +292                     }
    +293                 }
    +294                 sink.lineBreak();
    +295                 sink.text("CVSS Score: " + v.getCvssScore());
    +296                 if (v.getCwe() != null && !v.getCwe().isEmpty()) {
    +297                     sink.lineBreak();
    +298                     sink.text("CWE: ");
    +299                     sink.text(v.getCwe());
    +300                 }
    +301                 sink.paragraph_();
    +302                 sink.paragraph();
    +303                 sink.text(v.getDescription());
    +304                 if (v.getReferences() != null && !v.getReferences().isEmpty()) {
    +305                     sink.list();
    +306                     for (Reference ref : v.getReferences()) {
    +307                         sink.listItem();
    +308                         sink.text(ref.getSource());
    +309                         sink.text(" - ");
    +310                         sink.link(ref.getUrl());
    +311                         sink.text(ref.getName());
    +312                         sink.link_();
    +313                         sink.listItem_();
    +314                     }
    +315                     sink.list_();
    +316                 }
    +317                 sink.paragraph_();
    +318                 if (v.getVulnerableSoftware() != null && !v.getVulnerableSoftware().isEmpty()) {
    +319                     sink.paragraph();
    +320 
    +321                     cnt += 1;
    +322                     sink.rawText("Vulnerable Software <a href=\"javascript:toggleElement(this, 'vulnSoft" + cnt + "')\">[-]</a>");
    +323                     sink.rawText("<div id=\"vulnSoft" + cnt + "\" style=\"display:block\">");
    +324                     sink.list();
    +325                     for (VulnerableSoftware vs : v.getVulnerableSoftware()) {
    +326                         sink.listItem();
    +327                         try {
    +328                             sink.link("http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + URLEncoder.encode(vs.getName(), "US-ASCII"));
    +329                             sink.text(vs.getName());
    +330                             sink.link_();
    +331                             if (vs.hasPreviousVersion()) {
    +332                                 sink.text(" and all previous versions.");
    +333                             }
    +334                         } catch (UnsupportedEncodingException ex) {
    +335                             sink.text(vs.getName());
    +336                             if (vs.hasPreviousVersion()) {
    +337                                 sink.text(" and all previous versions.");
    +338                             }
    +339                             sink.text(" (http://web.nvd.nist.gov/view/vuln/search-results?cpe=" + vs.getName() + ")");
    +340                         }
    +341 
    +342                         sink.listItem_();
    +343                     }
    +344                     sink.list_();
    +345                     sink.rawText("</div>");
    +346                     sink.paragraph_();
    +347                 }
    +348             }
    +349         }
    +350     }
    +351 
    +352     /**
    +353      * Writes the identifiers to the site report.
    +354      *
    +355      * @param d the dependency
    +356      * @param sink the sink to write the data to
    +357      */
    +358     private void writeSiteReportDependencyIdentifiers(Dependency d, Sink sink) {
    +359         if (d.getIdentifiers() != null && !d.getIdentifiers().isEmpty()) {
    +360             sink.sectionTitle4();
    +361             sink.text("Identifiers");
    +362             sink.sectionTitle4_();
    +363             sink.list();
    +364             for (Identifier i : d.getIdentifiers()) {
    +365                 sink.listItem();
    +366                 sink.text(i.getType());
    +367                 sink.text(": ");
    +368                 if (i.getUrl() != null && i.getUrl().length() > 0) {
    +369                     sink.link(i.getUrl());
    +370                     sink.text(i.getValue());
    +371                     sink.link_();
    +372                 } else {
    +373                     sink.text(i.getValue());
    +374                 }
    +375                 if (i.getDescription() != null && i.getDescription().length() > 0) {
    +376                     sink.lineBreak();
    +377                     sink.text(i.getDescription());
    +378                 }
    +379                 sink.listItem_();
    +380             }
    +381             sink.list_();
    +382         }
    +383     }
    +384 
    +385     /**
    +386      * Writes the related dependencies to the site report.
    +387      *
    +388      * @param d the dependency
    +389      * @param sink the sink to write the data to
    +390      * @param collapsibleHeaderCount the collapsible header count
    +391      * @return the collapsible header count
    +392      */
    +393     private int writeSiteReportDependencyRelatedDependencies(Dependency d, int collapsibleHeaderCount, Sink sink) {
    +394         int cnt = collapsibleHeaderCount;
    +395         if (d.getRelatedDependencies() != null && !d.getRelatedDependencies().isEmpty()) {
    +396             cnt += 1;
    +397             sink.sectionTitle4();
    +398             sink.rawText("Related Dependencies <a href=\"javascript:toggleElement(this, 'related" + cnt + "')\">[+]</a>");
    +399             sink.sectionTitle4_();
    +400             sink.rawText("<div id=\"related" + cnt + "\" style=\"display:none\">");
    +401             sink.list();
    +402             for (Dependency r : d.getRelatedDependencies()) {
    +403                 sink.listItem();
    +404                 sink.text(r.getFileName());
    +405                 sink.list();
    +406                 writeListItem(sink, "File Path: " + r.getFilePath());
    +407                 writeListItem(sink, "SHA1: " + r.getSha1sum());
    +408                 writeListItem(sink, "MD5: " + r.getMd5sum());
    +409                 sink.list_();
    +410                 sink.listItem_();
    +411             }
    +412             sink.list_();
    +413             sink.rawText("</div>");
    +414         }
    +415         return cnt;
    +416     }
    +417 
    +418     /**
    +419      * Writes the evidence used to the site report.
    +420      *
    +421      * @param d the dependency
    +422      * @param sink the sink to write the data to
    +423      * @param collapsibleHeaderCount the collapsible header count
    +424      * @return the collapsible header count
    +425      */
    +426     private int writeSiteReportDependencyEvidenceUsed(Dependency d, int collapsibleHeaderCount, Sink sink) {
    +427         int cnt = collapsibleHeaderCount;
    +428         if (d.getEvidenceUsed() != null && d.getEvidenceUsed().size() > 0) {
    +429             cnt += 1;
    +430             sink.sectionTitle4();
    +431             sink.rawText("Evidence Collected <a href=\"javascript:toggleElement(this, 'evidence" + cnt + "')\">[+]</a>");
    +432             sink.sectionTitle4_();
    +433             sink.rawText("<div id=\"evidence" + cnt + "\" style=\"display:none\">");
    +434             sink.table();
    +435             sink.tableRow();
    +436             writeTableHeaderCell(sink, "Source");
    +437             writeTableHeaderCell(sink, "Name");
    +438             writeTableHeaderCell(sink, "Value");
    +439             sink.tableRow_();
    +440             for (Evidence e : d.getEvidenceUsed()) {
    +441                 sink.tableRow();
    +442                 writeTableCell(sink, e.getSource());
    +443                 writeTableCell(sink, e.getName());
    +444                 writeTableCell(sink, e.getValue());
    +445                 sink.tableRow_();
    +446             }
    +447             sink.table_();
    +448             sink.rawText("</div>");
    +449         }
    +450         return cnt;
    +451     }
    +452 
    +453     /**
    +454      * Writes the analysis exceptions generated during analysis to the site
    +455      * report.
    +456      *
    +457      * @param d the dependency
    +458      * @param sink the sink to write the data to
    +459      * @param collapsibleHeaderCount the collapsible header count
    +460      * @return the collapsible header count
    +461      */
    +462     private int writeSiteReportDependencyAnalysisExceptions(Dependency d, int collapsibleHeaderCount, Sink sink) {
    +463         int cnt = collapsibleHeaderCount;
    +464         if (d.getAnalysisExceptions() != null && !d.getAnalysisExceptions().isEmpty()) {
    +465             cnt += 1;
    +466             sink.sectionTitle4();
    +467             sink.rawText("<font style=\"color:red\">Errors occurred during analysis:</font> <a href=\"javascript:toggleElement(this, 'errors"
    +468                     + cnt + "')\">[+]</a>");
    +469             sink.sectionTitle4_();
    +470             sink.rawText("<div id=\"errors" + cnt + "\">");
    +471             sink.list();
    +472             for (Exception e : d.getAnalysisExceptions()) {
    +473                 sink.listItem();
    +474                 sink.text(e.getMessage());
    +475                 sink.listItem_();
    +476             }
    +477             sink.list_();
    +478             sink.rawText("</div>");
    +479         }
    +480         return cnt;
    +481     }
    +482 
    +483     /**
    +484      * Writes the dependency header to the site report.
    +485      *
    +486      * @param d the dependency
    +487      * @param sink the sink to write the data to
    +488      */
    +489     private void writeSiteReportDependencyHeader(Sink sink, Dependency d) {
    +490         sink.sectionTitle2();
    +491         sink.anchor("sha1" + d.getSha1sum());
    +492         sink.text(d.getFileName());
    +493         sink.anchor_();
    +494         sink.sectionTitle2_();
    +495         if (d.getDescription() != null && d.getDescription().length() > 0) {
    +496             sink.paragraph();
    +497             sink.bold();
    +498             sink.text("Description: ");
    +499             sink.bold_();
    +500             sink.text(d.getDescription());
    +501             sink.paragraph_();
    +502         }
    +503         if (d.getLicense() != null && d.getLicense().length() > 0) {
    +504             sink.paragraph();
    +505             sink.bold();
    +506             sink.text("License: ");
    +507             sink.bold_();
    +508             if (d.getLicense().startsWith("http://") && !d.getLicense().contains(" ")) {
    +509                 sink.link(d.getLicense());
    +510                 sink.text(d.getLicense());
    +511                 sink.link_();
    +512             } else {
    +513                 sink.text(d.getLicense());
    +514             }
    +515             sink.paragraph_();
    +516         }
    +517     }
    +518 
    +519     /**
    +520      * Adds a list item to the site report.
    +521      *
    +522      * @param sink the sink to write the data to
    +523      * @param text the text to write
    +524      */
    +525     private void writeListItem(Sink sink, String text) {
    +526         sink.listItem();
    +527         sink.text(text);
    +528         sink.listItem_();
    +529     }
    +530 
    +531     /**
    +532      * Adds a table cell to the site report.
    +533      *
    +534      * @param sink the sink to write the data to
    +535      * @param text the text to write
    +536      */
    +537     private void writeTableCell(Sink sink, String text) {
    +538         sink.tableCell();
    +539         sink.text(text);
    +540         sink.tableCell_();
    +541     }
    +542 
    +543     /**
    +544      * Adds a table header cell to the site report.
    +545      *
    +546      * @param sink the sink to write the data to
    +547      * @param text the text to write
    +548      */
    +549     private void writeTableHeaderCell(Sink sink, String text) {
    +550         sink.tableHeaderCell();
    +551         sink.text(text);
    +552         sink.tableHeaderCell_();
    +553     }
    +554 
    +555     /**
    +556      * Writes the TOC for the site report.
    +557      *
    +558      * @param sink the sink to write the data to
    +559      * @param dependencies the dependencies that are being reported on
    +560      */
    +561     private void writeSiteReportTOC(Sink sink, final List<Dependency> dependencies) {
    +562         sink.list();
    +563         for (Dependency d : dependencies) {
    +564             sink.listItem();
    +565             sink.link("#sha1" + d.getSha1sum());
    +566             sink.text(d.getFileName());
    +567             sink.link_();
    +568             if (!d.getVulnerabilities().isEmpty()) {
    +569                 sink.rawText(" <font style=\"color:red\">•</font>");
    +570             }
    +571             if (!d.getRelatedDependencies().isEmpty()) {
    +572                 sink.list();
    +573                 for (Dependency r : d.getRelatedDependencies()) {
    +574                     writeListItem(sink, r.getFileName());
    +575                 }
    +576                 sink.list_();
    +577             }
    +578             sink.listItem_();
    +579         }
    +580         sink.list_();
    +581     }
    +582 
    +583     /**
    +584      * Writes the site report header.
    +585      *
    +586      * @param sink the sink to write the data to
    +587      * @param projectName the name of the project
    +588      */
    +589     private void writeSiteReportHeader(Sink sink, String projectName) {
    +590         sink.head();
    +591         sink.title();
    +592         sink.text("Dependency-Check Report: " + projectName);
    +593         sink.title_();
    +594         sink.head_();
    +595         sink.body();
    +596         sink.rawText("<script type=\"text/javascript\">");
    +597         sink.rawText("function toggleElement(el, targetId) {");
    +598         sink.rawText("if (el.innerText == '[+]') {");
    +599         sink.rawText("    el.innerText = '[-]';");
    +600         sink.rawText("    document.getElementById(targetId).style.display='block';");
    +601         sink.rawText("} else {");
    +602         sink.rawText("    el.innerText = '[+]';");
    +603         sink.rawText("    document.getElementById(targetId).style.display='none';");
    +604         sink.rawText("}");
    +605 
    +606         sink.rawText("}");
    +607         sink.rawText("</script>");
    +608         sink.section1();
    +609         sink.sectionTitle1();
    +610         sink.text("Project: " + projectName);
    +611         sink.sectionTitle1_();
    +612         sink.date();
    +613         final Date now = new Date();
    +614         sink.text(DateFormat.getDateTimeInstance().format(now));
    +615         sink.date_();
    +616         sink.section1_();
    +617     }
    +618     // </editor-fold>
    +619 
    +620     /**
    +621      * Takes the properties supplied and updates the dependency-check settings.
    +622      * Additionally, this sets the system properties required to change the
    +623      * proxy url, port, and connection timeout.
    +624      */
    +625     private void populateSettings() {
    +626         InputStream mojoProperties = null;
    +627         try {
    +628             mojoProperties = this.getClass().getClassLoader().getResourceAsStream(PROPERTIES_FILE);
    +629             Settings.mergeProperties(mojoProperties);
    +630         } catch (IOException ex) {
    +631             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.WARNING, "Unable to load the dependency-check ant task.properties file.");
    +632             Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINE, null, ex);
    +633         } finally {
    +634             if (mojoProperties != null) {
    +635                 try {
    +636                     mojoProperties.close();
    +637                 } catch (IOException ex) {
    +638                     Logger.getLogger(DependencyCheckMojo.class.getName()).log(Level.FINEST, null, ex);
    +639                 }
    +640             }
    +641         }
    +642 
    +643         Settings.setBoolean(Settings.KEYS.AUTO_UPDATE, autoUpdate);
    +644 
    +645         if (proxyUrl != null && !proxyUrl.isEmpty()) {
    +646             Settings.setString(Settings.KEYS.PROXY_URL, proxyUrl);
    +647         }
    +648         if (proxyPort != null && !proxyPort.isEmpty()) {
    +649             Settings.setString(Settings.KEYS.PROXY_PORT, proxyPort);
    +650         }
    +651         if (connectionTimeout != null && !connectionTimeout.isEmpty()) {
    +652             Settings.setString(Settings.KEYS.CONNECTION_TIMEOUT, connectionTimeout);
    +653         }
    +654     }
    +655 
    +656     /**
    +657      * Executes the dependency-check and generates the report.
    +658      *
    +659      * @throws MojoExecutionException if a maven exception occurs
    +660      * @throws MojoFailureException thrown if a CVSS score is found that is
    +661      * higher then the configured level
    +662      */
    +663     public void execute() throws MojoExecutionException, MojoFailureException {
    +664         final Engine engine = executeDependencyCheck();
    +665         generateExternalReports(engine);
    +666         if (this.failBuildOnCVSS <= 10) {
    +667             checkForFailure(engine.getDependencies());
    +668         }
    +669     }
    +670 
    +671     /**
    +672      * Generates the Dependency-Check Site Report.
    +673      *
    +674      * @param sink the sink to write the report to
    +675      * @param locale the locale to use when generating the report
    +676      * @throws MavenReportException if a Maven report exception occurs
    +677      */
    +678     public void generate(@SuppressWarnings("deprecation") org.codehaus.doxia.sink.Sink sink,
    +679             Locale locale) throws MavenReportException {
    +680         generate((Sink) sink, null, locale);
    +681     }
    +682 
    +683     /**
    +684      * Generates the Dependency-Check Site Report.
    +685      *
    +686      * @param sink the sink to write the report to
    +687      * @param sinkFactory the sink factory
    +688      * @param locale the locale to use when generating the report
    +689      * @throws MavenReportException if a maven report exception occurs
    +690      */
    +691     public void generate(Sink sink, SinkFactory sinkFactory, Locale locale) throws MavenReportException {
    +692         final Engine engine = executeDependencyCheck();
    +693         generateMavenSiteReport(engine, sink);
    +694     }
    +695 
    +696     // <editor-fold defaultstate="collapsed" desc="required setter/getter methods">
    +697     /**
    +698      * Returns the output name.
    +699      *
    +700      * @return the output name
    +701      */
    +702     public String getOutputName() {
    +703         return reportName;
    +704     }
    +705 
    +706     /**
    +707      * Returns the category name.
    +708      *
    +709      * @return the category name
    +710      */
    +711     public String getCategoryName() {
    +712         return MavenReport.CATEGORY_PROJECT_REPORTS;
    +713     }
    +714 
    +715     /**
    +716      * Returns the report name.
    +717      *
    +718      * @param locale the location
    +719      * @return the report name
    +720      */
    +721     public String getName(Locale locale) {
    +722         return name;
    +723     }
    +724 
    +725     /**
    +726      * Sets the Reporting output directory.
    +727      *
    +728      * @param directory the output directory
    +729      */
    +730     public void setReportOutputDirectory(File directory) {
    +731         reportOutputDirectory = directory;
    +732     }
    +733 
    +734     /**
    +735      * Returns the output directory.
    +736      *
    +737      * @return the output directory
    +738      */
    +739     public File getReportOutputDirectory() {
    +740         return reportOutputDirectory;
    +741     }
    +742 
    +743     /**
    +744      * Gets the description of the Dependency-Check report to be displayed in
    +745      * the Maven Generated Reports page.
    +746      *
    +747      * @param locale The Locale to get the description for
    +748      * @return the description
    +749      */
    +750     public String getDescription(Locale locale) {
    +751         return description;
    +752     }
    +753 
    +754     /**
    +755      * Returns whether this is an external report.
    +756      *
    +757      * @return true or false;
    +758      */
    +759     public boolean isExternalReport() {
    +760         return externalReport;
    +761     }
    +762 
    +763     /**
    +764      * Returns whether or not the plugin can generate a report.
    +765      *
    +766      * @return true
    +767      */
    +768     public boolean canGenerateReport() {
    +769         return true;
    +770     }
    +771     // </editor-fold>
    +772 
    +773     /**
    +774      * Checks to see if a vulnerability has been identified with a CVSS score
    +775      * that is above the threshold set in the configuration.
    +776      *
    +777      * @param dependencies the list of dependency objects
    +778      * @throws MojoFailureException thrown if a CVSS score is found that is
    +779      * higher then the threshold set
    +780      */
    +781     private void checkForFailure(List<Dependency> dependencies) throws MojoFailureException {
    +782         final StringBuilder ids = new StringBuilder();
    +783         for (Dependency d : dependencies) {
    +784             for (Vulnerability v : d.getVulnerabilities()) {
    +785                 if (v.getCvssScore() >= failBuildOnCVSS) {
    +786                     if (ids.length() == 0) {
    +787                         ids.append(v.getName());
    +788                     } else {
    +789                         ids.append(", ").append(v.getName());
    +790                     }
    +791                 }
    +792             }
    +793         }
    +794         if (ids.length() > 0) {
    +795             final String msg = String.format("%n%nDependency-Check Failure:%n"
    +796                     + "One or more dependencies were identified with vulnerabilities that have a CVSS score greater then '%.1f': %s%n"
    +797                     + "See the dependency-check report for more details.%n%n", failBuildOnCVSS, ids.toString());
    +798             throw new MojoFailureException(msg);
    +799         }
    +800     }
    +801 }
    +
    +
    + + diff --git a/dependency-check-maven/xref/org/owasp/dependencycheck/maven/HelpMojo.html b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/HelpMojo.html new file mode 100644 index 000000000..e14641a1b --- /dev/null +++ b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/HelpMojo.html @@ -0,0 +1,452 @@ + + + + +HelpMojo xref + + + +
    +
    +1   package org.owasp.dependencycheck.maven;
    +2   
    +3   import org.apache.maven.plugin.AbstractMojo;
    +4   import org.apache.maven.plugin.MojoExecutionException;
    +5   import org.apache.maven.plugins.annotations.Mojo;
    +6   import org.apache.maven.plugins.annotations.Parameter;
    +7   
    +8   import org.w3c.dom.Document;
    +9   import org.w3c.dom.Element;
    +10  import org.w3c.dom.Node;
    +11  import org.w3c.dom.NodeList;
    +12  import org.xml.sax.SAXException;
    +13  
    +14  import javax.xml.parsers.DocumentBuilder;
    +15  import javax.xml.parsers.DocumentBuilderFactory;
    +16  import javax.xml.parsers.ParserConfigurationException;
    +17  import java.io.IOException;
    +18  import java.io.InputStream;
    +19  import java.util.ArrayList;
    +20  import java.util.Iterator;
    +21  import java.util.List;
    +22  
    +23  /**
    +24   * Display help information on dependency-check-maven.<br/>
    +25   * Call <code>mvn dependency-check:help -Ddetail=true -Dgoal=&lt;goal-name&gt;</code> to display parameter details.
    +26   * @author
    +27   * @version
    +28   */
    +29  @Mojo( name = "help", requiresProject = false, threadSafe = true )
    +30  public class HelpMojo
    +31      extends AbstractMojo
    +32  {
    +33      /**
    +34       * If <code>true</code>, display all settable properties for each goal.
    +35       *
    +36       */
    +37      @Parameter( property = "detail", defaultValue = "false" )
    +38      private boolean detail;
    +39  
    +40      /**
    +41       * The name of the goal for which to show help. If unspecified, all goals will be displayed.
    +42       *
    +43       */
    +44      @Parameter( property = "goal" )
    +45      private java.lang.String goal;
    +46  
    +47      /**
    +48       * The maximum length of a display line, should be positive.
    +49       *
    +50       */
    +51      @Parameter( property = "lineLength", defaultValue = "80" )
    +52      private int lineLength;
    +53  
    +54      /**
    +55       * The number of spaces per indentation level, should be positive.
    +56       *
    +57       */
    +58      @Parameter( property = "indentSize", defaultValue = "2" )
    +59      private int indentSize;
    +60  
    +61      // groupId/artifactId/plugin-help.xml
    +62      private static final String PLUGIN_HELP_PATH = "/META-INF/maven/org.owasp/dependency-check-maven/plugin-help.xml";
    +63  
    +64      private Document build()
    +65          throws MojoExecutionException
    +66      {
    +67          getLog().debug( "load plugin-help.xml: " + PLUGIN_HELP_PATH );
    +68          InputStream is = getClass().getResourceAsStream( PLUGIN_HELP_PATH );
    +69          try
    +70          {
    +71              DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    +72              DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
    +73              return dBuilder.parse( is );
    +74          }
    +75          catch ( IOException e )
    +76          {
    +77              throw new MojoExecutionException( e.getMessage(), e );
    +78          }
    +79          catch ( ParserConfigurationException e )
    +80          {
    +81              throw new MojoExecutionException( e.getMessage(), e );
    +82          }
    +83          catch ( SAXException e )
    +84          {
    +85              throw new MojoExecutionException( e.getMessage(), e );
    +86          }
    +87      }
    +88  
    +89      /**
    +90       * {@inheritDoc}
    +91       */
    +92      public void execute()
    +93          throws MojoExecutionException
    +94      {
    +95          if ( lineLength <= 0 )
    +96          {
    +97              getLog().warn( "The parameter 'lineLength' should be positive, using '80' as default." );
    +98              lineLength = 80;
    +99          }
    +100         if ( indentSize <= 0 )
    +101         {
    +102             getLog().warn( "The parameter 'indentSize' should be positive, using '2' as default." );
    +103             indentSize = 2;
    +104         }
    +105 
    +106         Document doc = build();
    +107 
    +108         StringBuilder sb = new StringBuilder();
    +109         Node plugin = getSingleChild( doc, "plugin" );
    +110 
    +111 
    +112         String name = getValue( plugin, "name" );
    +113         String version = getValue( plugin, "version" );
    +114         String id = getValue( plugin, "groupId" ) + ":" + getValue( plugin, "artifactId" ) + ":" + version;
    +115         if ( isNotEmpty( name ) && !name.contains( id ) )
    +116         {
    +117             append( sb, name + " " + version, 0 );
    +118         }
    +119         else
    +120         {
    +121             if ( isNotEmpty( name ) )
    +122             {
    +123                 append( sb, name, 0 );
    +124             }
    +125             else
    +126             {
    +127                 append( sb, id, 0 );
    +128             }
    +129         }
    +130         append( sb, getValue( plugin, "description" ), 1 );
    +131         append( sb, "", 0 );
    +132 
    +133         //<goalPrefix>plugin</goalPrefix>
    +134         String goalPrefix = getValue( plugin, "goalPrefix" );
    +135 
    +136         Node mojos1 = getSingleChild( plugin, "mojos" );
    +137 
    +138         List<Node> mojos = findNamedChild( mojos1, "mojo" );
    +139 
    +140         if ( goal == null || goal.length() <= 0 )
    +141         {
    +142             append( sb, "This plugin has " + mojos.size() + ( mojos.size() > 1 ? " goals:" : " goal:" ), 0 );
    +143             append( sb, "", 0 );
    +144         }
    +145 
    +146         for ( Node mojo : mojos )
    +147         {
    +148             writeGoal( sb, goalPrefix, (Element) mojo );
    +149         }
    +150 
    +151         if ( getLog().isInfoEnabled() )
    +152         {
    +153             getLog().info( sb.toString() );
    +154         }
    +155     }
    +156 
    +157 
    +158     private static boolean isNotEmpty( String string )
    +159     {
    +160         return string != null && string.length() > 0;
    +161     }
    +162 
    +163     private String getValue( Node node, String elementName )
    +164         throws MojoExecutionException
    +165     {
    +166         return getSingleChild( node, elementName ).getTextContent();
    +167     }
    +168 
    +169     private Node getSingleChild( Node node, String elementName )
    +170         throws MojoExecutionException
    +171     {
    +172         List<Node> namedChild = findNamedChild( node, elementName );
    +173         if ( namedChild.isEmpty() )
    +174         {
    +175             throw new MojoExecutionException( "Could not find " + elementName + " in plugin-help.xml" );
    +176         }
    +177         if ( namedChild.size() > 1 )
    +178         {
    +179             throw new MojoExecutionException( "Multiple " + elementName + " in plugin-help.xml" );
    +180         }
    +181         return namedChild.get( 0 );
    +182     }
    +183 
    +184     private List<Node> findNamedChild( Node node, String elementName )
    +185     {
    +186         List<Node> result = new ArrayList<Node>();
    +187         NodeList childNodes = node.getChildNodes();
    +188         for ( int i = 0; i < childNodes.getLength(); i++ )
    +189         {
    +190             Node item = childNodes.item( i );
    +191             if ( elementName.equals( item.getNodeName() ) )
    +192             {
    +193                 result.add( item );
    +194             }
    +195         }
    +196         return result;
    +197     }
    +198 
    +199     private Node findSingleChild( Node node, String elementName )
    +200         throws MojoExecutionException
    +201     {
    +202         List<Node> elementsByTagName = findNamedChild( node, elementName );
    +203         if ( elementsByTagName.isEmpty() )
    +204         {
    +205             return null;
    +206         }
    +207         if ( elementsByTagName.size() > 1 )
    +208         {
    +209             throw new MojoExecutionException( "Multiple " + elementName + "in plugin-help.xml" );
    +210         }
    +211         return elementsByTagName.get( 0 );
    +212     }
    +213 
    +214     private void writeGoal( StringBuilder sb, String goalPrefix, Element mojo )
    +215         throws MojoExecutionException
    +216     {
    +217         String mojoGoal = getValue( mojo, "goal" );
    +218         Node configurationElement = findSingleChild( mojo, "configuration" );
    +219 		Node description = findSingleChild( mojo, "description" );
    +220         if ( goal == null || goal.length() <= 0 || mojoGoal.equals( goal ) )
    +221         {
    +222             append( sb, goalPrefix + ":" + mojoGoal, 0 );
    +223             Node deprecated = findSingleChild( mojo, "deprecated" );
    +224             if ( ( deprecated != null ) && isNotEmpty( deprecated.getNodeValue() ) )
    +225             {
    +226                 append( sb, "Deprecated. " + deprecated, 1 );
    +227                 if ( detail && description != null )
    +228                 {
    +229                     append( sb, "", 0 );
    +230                     append( sb, description.getTextContent(), 1 );
    +231                 }
    +232             }
    +233             else if (description != null )
    +234             {
    +235                 append( sb, description.getTextContent(), 1 );
    +236             }
    +237             append( sb, "", 0 );
    +238 
    +239             if ( detail )
    +240             {
    +241                 Node parametersNode = getSingleChild( mojo, "parameters" );
    +242                 List<Node> parameters = findNamedChild( parametersNode, "parameter" );
    +243                 append( sb, "Available parameters:", 1 );
    +244                 append( sb, "", 0 );
    +245 
    +246                 for ( Node parameter : parameters )
    +247                 {
    +248                     writeParameter( sb, parameter, configurationElement );
    +249                 }
    +250             }
    +251         }
    +252     }
    +253 
    +254     private void writeParameter( StringBuilder sb, Node parameter, Node configurationElement )
    +255         throws MojoExecutionException
    +256     {
    +257         String parameterName = getValue( parameter, "name" );
    +258         String parameterDescription = getValue( parameter, "description" );
    +259 
    +260         Node fieldConfigurationElement = findSingleChild( configurationElement, parameterName );
    +261 
    +262         String parameterDefaultValue = "";
    +263         if ( fieldConfigurationElement != null && fieldConfigurationElement.getNodeValue() != null )
    +264         {
    +265             parameterDefaultValue = " (Default: " + ((Element)fieldConfigurationElement).getAttribute( "default-value" ) + ")";
    +266         }
    +267         append( sb, parameterName + parameterDefaultValue, 2 );
    +268         Node deprecated = findSingleChild( parameter, "deprecated" );
    +269         if ( ( deprecated != null ) && isNotEmpty( deprecated.getNodeValue() ) )
    +270         {
    +271             append( sb, "Deprecated. " + deprecated.getNodeValue(), 3 );
    +272             append( sb, "", 0 );
    +273         }
    +274         append( sb, parameterDescription, 3 );
    +275         if ( "true".equals( getValue( parameter, "required" ) ) )
    +276         {
    +277             append( sb, "Required: Yes", 3 );
    +278         }
    +279         Node expression = findSingleChild( parameter, "expression" );
    +280         if ( ( expression != null ) && isNotEmpty( expression.getNodeValue() ) )
    +281         {
    +282         	String property = getPropertyFromExpression( expression.getNodeValue() );
    +283             append( sb, "User property: " + property, 3 );
    +284         }
    +285 
    +286         append( sb, "", 0 );
    +287     }
    +288 
    +289     /**
    +290      * <p>Repeat a String <code>n</code> times to form a new string.</p>
    +291      *
    +292      * @param str    String to repeat
    +293      * @param repeat number of times to repeat str
    +294      * @return String with repeated String
    +295      * @throws NegativeArraySizeException if <code>repeat < 0</code>
    +296      * @throws NullPointerException       if str is <code>null</code>
    +297      */
    +298     private static String repeat( String str, int repeat )
    +299     {
    +300         StringBuilder buffer = new StringBuilder( repeat * str.length() );
    +301 
    +302         for ( int i = 0; i < repeat; i++ )
    +303         {
    +304             buffer.append( str );
    +305         }
    +306 
    +307         return buffer.toString();
    +308     }
    +309 
    +310     /**
    +311      * Append a description to the buffer by respecting the indentSize and lineLength parameters.
    +312      * <b>Note</b>: The last character is always a new line.
    +313      *
    +314      * @param sb          The buffer to append the description, not <code>null</code>.
    +315      * @param description The description, not <code>null</code>.
    +316      * @param indent      The base indentation level of each line, must not be negative.
    +317      */
    +318     private void append( StringBuilder sb, String description, int indent )
    +319     {
    +320         for ( String line : toLines( description, indent, indentSize, lineLength ) )
    +321         {
    +322             sb.append( line ).append( '\n' );
    +323         }
    +324     }
    +325 
    +326     /**
    +327      * Splits the specified text into lines of convenient display length.
    +328      *
    +329      * @param text       The text to split into lines, must not be <code>null</code>.
    +330      * @param indent     The base indentation level of each line, must not be negative.
    +331      * @param indentSize The size of each indentation, must not be negative.
    +332      * @param lineLength The length of the line, must not be negative.
    +333      * @return The sequence of display lines, never <code>null</code>.
    +334      * @throws NegativeArraySizeException if <code>indent < 0</code>
    +335      */
    +336     private static List<String> toLines( String text, int indent, int indentSize, int lineLength )
    +337     {
    +338         List<String> lines = new ArrayList<String>();
    +339 
    +340         String ind = repeat( "\t", indent );
    +341 
    +342         String[] plainLines = text.split( "(\r\n)|(\r)|(\n)" );
    +343 
    +344         for ( String plainLine : plainLines )
    +345         {
    +346             toLines( lines, ind + plainLine, indentSize, lineLength );
    +347         }
    +348 
    +349         return lines;
    +350     }
    +351 
    +352     /**
    +353      * Adds the specified line to the output sequence, performing line wrapping if necessary.
    +354      *
    +355      * @param lines      The sequence of display lines, must not be <code>null</code>.
    +356      * @param line       The line to add, must not be <code>null</code>.
    +357      * @param indentSize The size of each indentation, must not be negative.
    +358      * @param lineLength The length of the line, must not be negative.
    +359      */
    +360     private static void toLines( List<String> lines, String line, int indentSize, int lineLength )
    +361     {
    +362         int lineIndent = getIndentLevel( line );
    +363         StringBuilder buf = new StringBuilder( 256 );
    +364 
    +365         String[] tokens = line.split( " +" );
    +366 
    +367         for ( String token : tokens )
    +368         {
    +369             if ( buf.length() > 0 )
    +370             {
    +371                 if ( buf.length() + token.length() >= lineLength )
    +372                 {
    +373                     lines.add( buf.toString() );
    +374                     buf.setLength( 0 );
    +375                     buf.append( repeat( " ", lineIndent * indentSize ) );
    +376                 }
    +377                 else
    +378                 {
    +379                     buf.append( ' ' );
    +380                 }
    +381             }
    +382 
    +383             for ( int j = 0; j < token.length(); j++ )
    +384             {
    +385                 char c = token.charAt( j );
    +386                 if ( c == '\t' )
    +387                 {
    +388                     buf.append( repeat( " ", indentSize - buf.length() % indentSize ) );
    +389                 }
    +390                 else if ( c == '\u00A0' )
    +391                 {
    +392                     buf.append( ' ' );
    +393                 }
    +394                 else
    +395                 {
    +396                     buf.append( c );
    +397                 }
    +398             }
    +399         }
    +400         lines.add( buf.toString() );
    +401     }
    +402 
    +403     /**
    +404      * Gets the indentation level of the specified line.
    +405      *
    +406      * @param line The line whose indentation level should be retrieved, must not be <code>null</code>.
    +407      * @return The indentation level of the line.
    +408      */
    +409     private static int getIndentLevel( String line )
    +410     {
    +411         int level = 0;
    +412         for ( int i = 0; i < line.length() && line.charAt( i ) == '\t'; i++ )
    +413         {
    +414             level++;
    +415         }
    +416         for ( int i = level + 1; i <= level + 4 && i < line.length(); i++ )
    +417         {
    +418             if ( line.charAt( i ) == '\t' )
    +419             {
    +420                 level++;
    +421                 break;
    +422             }
    +423         }
    +424         return level;
    +425     }
    +426     
    +427     private String getPropertyFromExpression( String expression )
    +428     {
    +429         if ( expression != null && expression.startsWith( "${" ) && expression.endsWith( "}" )
    +430             && !expression.substring( 2 ).contains( "${" ) )
    +431         {
    +432             // expression="${xxx}" -> property="xxx"
    +433             return expression.substring( 2, expression.length() - 1 );
    +434         }
    +435         // no property can be extracted
    +436         return null;
    +437     }
    +438 }
    +
    +
    + + diff --git a/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-frame.html b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-frame.html new file mode 100644 index 000000000..2a190ea75 --- /dev/null +++ b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-frame.html @@ -0,0 +1,27 @@ + + + + + + dependency-check-maven 1.0.1 Reference Package org.owasp.dependencycheck.maven + + + + +

    + org.owasp.dependencycheck.maven +

    + +

    Classes

    + + + + + \ No newline at end of file diff --git a/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-summary.html b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-summary.html new file mode 100644 index 000000000..e49a8b1de --- /dev/null +++ b/dependency-check-maven/xref/org/owasp/dependencycheck/maven/package-summary.html @@ -0,0 +1,72 @@ + + + + + + dependency-check-maven 1.0.1 Reference Package org.owasp.dependencycheck.maven + + + +
    + +
    +
    + +
    + +

    Package org.owasp.dependencycheck.maven

    + + + + + + + + + + + + + + + +
    Class Summary
    + DependencyCheckMojo +
    + HelpMojo +
    + +
    + +
    +
    + +
    +
    + Copyright © 2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-maven/xref/overview-frame.html b/dependency-check-maven/xref/overview-frame.html new file mode 100644 index 000000000..fec3015bd --- /dev/null +++ b/dependency-check-maven/xref/overview-frame.html @@ -0,0 +1,25 @@ + + + + + + dependency-check-maven 1.0.1 Reference + + + + +

    + All Classes +

    + +

    Packages

    + + + + + + diff --git a/dependency-check-maven/xref/overview-summary.html b/dependency-check-maven/xref/overview-summary.html new file mode 100644 index 000000000..932ff2657 --- /dev/null +++ b/dependency-check-maven/xref/overview-summary.html @@ -0,0 +1,64 @@ + + + + + + dependency-check-maven 1.0.1 Reference + + + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +

    dependency-check-maven 1.0.1 Reference

    + + + + + + + + + + + + +
    Packages
    + org.owasp.dependencycheck.maven +
    + +
    +
      +
    • Overview
    • +
    • Package
    • +
    +
    +
    + +
    + +
    + Copyright © 2013 OWASP. All Rights Reserved. + + \ No newline at end of file diff --git a/dependency-check-maven/xref/stylesheet.css b/dependency-check-maven/xref/stylesheet.css new file mode 100644 index 000000000..00e6114db --- /dev/null +++ b/dependency-check-maven/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/images/accessories-text-editor.png b/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/images/add.gif b/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/images/apache-maven-project-2.png b/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/images/contact-new.png b/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/images/drive-harddisk.png b/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/images/icon_error_sml.gif b/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/images/icon_help_sml.gif b/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/images/icon_info_sml.gif b/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/images/icon_warning_sml.gif b/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/images/logos/build-by-maven-white.png b/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/images/logos/maven-feather.png b/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/images/network-server.png b/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/images/profiles/pre-release.png b/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/images/profiles/retired.png b/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/images/profiles/sandbox.png b/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/img/glyphicons-halflings.png b/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/index.html b/index.html new file mode 100644 index 000000000..f023d6aa4 --- /dev/null +++ b/index.html @@ -0,0 +1,236 @@ + + + + + + + + + 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/issue-tracking.html b/issue-tracking.html new file mode 100644 index 000000000..81ef7986f --- /dev/null +++ b/issue-tracking.html @@ -0,0 +1,227 @@ + + + + + + + + + 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/js/apache-maven-fluido-1.3.0.min.js b/js/apache-maven-fluido-1.3.0.min.js new file mode 100644 index 000000000..677e611ef --- /dev/null +++ b/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/mail-lists.html b/mail-lists.html new file mode 100644 index 000000000..10344e146 --- /dev/null +++ b/mail-lists.html @@ -0,0 +1,235 @@ + + + + + + + + + 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/modules.html b/modules.html new file mode 100644 index 000000000..679b2677f --- /dev/null +++ b/modules.html @@ -0,0 +1,238 @@ + + + + + + + + + dependency-check - Project Modules + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Modules

    +

    This project has declared the following modules:

    + + + + + + + + + + + + + + + +
    NameDescription
    dependency-check-core-
    dependency-check-cliDependency-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-antDependency-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-mavenDependency-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/project-info.html b/project-info.html new file mode 100644 index 000000000..22de99687 --- /dev/null +++ b/project-info.html @@ -0,0 +1,252 @@ + + + + + + + + + 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/project-summary.html b/project-summary.html new file mode 100644 index 000000000..c2936d333 --- /dev/null +++ b/project-summary.html @@ -0,0 +1,266 @@ + + + + + + + + + dependency-check - Project Summary + + + + + + + + + + + + + + + + + + + + + Fork me on GitHub + + + + + +
    + + + + + +
    +
    + +
    + + +
    + +
    +

    Project Summary

    +
    +

    Project Information

    + + + + + + + + + + + + +
    FieldValue
    Namedependency-check-parent
    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.1
    Typepom
    +
    +
    +
    + +
    + +
    +
    +
    Copyright © 2012-2013 + OWASP. + All Rights Reserved. + +
    + + + +
    +
    + + diff --git a/source-repository.html b/source-repository.html new file mode 100644 index 000000000..681aaeaa6 --- /dev/null +++ b/source-repository.html @@ -0,0 +1,240 @@ + + + + + + + + + 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/team-list.html b/team-list.html new file mode 100644 index 000000000..af32d152d --- /dev/null +++ b/team-list.html @@ -0,0 +1,272 @@ + + + + + + + + + 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.

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