From 46c5501b7a9e4036462706d67c135f6b9278551e Mon Sep 17 00:00:00 2001 From: Jeremy Long Date: Tue, 25 Nov 2014 05:58:16 -0500 Subject: [PATCH] changed ensureDataExists method to resolve startup time delays as part of a fix for issue #168 Former-commit-id: 15e85be9e5e01253f4864d18178da4c395b008eb --- .../java/org/owasp/dependencycheck/Engine.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java b/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java index e2a73d8e9..f01d1472c 100644 --- a/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java +++ b/dependency-check-core/src/main/java/org/owasp/dependencycheck/Engine.java @@ -32,8 +32,6 @@ import org.owasp.dependencycheck.analyzer.Analyzer; import org.owasp.dependencycheck.analyzer.AnalyzerService; import org.owasp.dependencycheck.analyzer.FileTypeAnalyzer; import org.owasp.dependencycheck.analyzer.exception.AnalysisException; -import org.owasp.dependencycheck.data.cpe.CpeMemoryIndex; -import org.owasp.dependencycheck.data.cpe.IndexException; import org.owasp.dependencycheck.data.nvdcve.ConnectionFactory; import org.owasp.dependencycheck.data.nvdcve.CveDB; import org.owasp.dependencycheck.data.nvdcve.DatabaseException; @@ -513,22 +511,20 @@ public class Engine implements Serializable { * @throws DatabaseException thrown if there is an exception opening the database */ private void ensureDataExists() throws NoDataException, DatabaseException { - final CpeMemoryIndex cpe = CpeMemoryIndex.getInstance(); + //final CpeMemoryIndex cpe = CpeMemoryIndex.getInstance(); final CveDB cve = new CveDB(); - try { cve.open(); - cpe.open(cve); - } catch (IndexException ex) { - throw new NoDataException(ex.getMessage(), ex); + if (!cve.dataExists()) { + throw new NoDataException("No documents exist"); + } +// cpe.open(cve); +// } catch (IndexException ex) { +// throw new NoDataException(ex.getMessage(), ex); } catch (DatabaseException ex) { throw new NoDataException(ex.getMessage(), ex); } finally { cve.close(); } - if (cpe.numDocs() <= 0) { - cpe.close(); - throw new NoDataException("No documents exist"); - } } }