diff --git a/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/ImageAnalyzerController.java b/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/ImageAnalyzerController.java index 6e361832e8..e0cd3c9602 100644 --- a/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/ImageAnalyzerController.java +++ b/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/ImageAnalyzerController.java @@ -58,7 +58,6 @@ import org.sleuthkit.autopsy.coreutils.History; import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.imageanalyzer.datamodel.DrawableDB; import org.sleuthkit.autopsy.imageanalyzer.datamodel.DrawableFile; -import org.sleuthkit.autopsy.imageanalyzer.datamodel.Category; // TEMP import org.sleuthkit.autopsy.imageanalyzer.grouping.GroupManager; import org.sleuthkit.autopsy.imageanalyzer.grouping.GroupViewState; import org.sleuthkit.autopsy.imageanalyzer.gui.NoGroupsDialog; @@ -496,9 +495,11 @@ public final class ImageAnalyzerController { try { // @@@ Could probably do something more fancy here and check if we've been canceled every now and then InnerTask it = workQueue.take(); + if (it.cancelled == false) { it.run(); } + Platform.runLater(() -> { queueSizeProperty.set(workQueue.size()); }); @@ -598,56 +599,9 @@ public final class ImageAnalyzerController { * task that updates one file in database with results from ingest */ private class UpdateFileTask extends FileTask { - + public UpdateFileTask(AbstractFile f) { super(f); - // TEMP TEMP TEMP - /* - if(f.getName().startsWith("a")){ - try{ - Case.getCurrentCase().getServices().getTagsManager().addContentTag(f, Category.ONE.getTagName(), ""); - } - catch (TskCoreException ex){ - System.out.println(" FAIL FAIL" + ex.getLocalizedMessage()); - - } - } - if(f.getName().startsWith("b")){ - try{ - Case.getCurrentCase().getServices().getTagsManager().addContentTag(f, Category.TWO.getTagName(), ""); - } - catch (TskCoreException ex){ - System.out.println(" FAIL FAIL" + ex.getLocalizedMessage()); - - } - } - if(f.getName().startsWith("c")){ - try{ - Case.getCurrentCase().getServices().getTagsManager().addContentTag(f, Category.THREE.getTagName(), ""); - } - catch (TskCoreException ex){ - System.out.println(" FAIL FAIL" + ex.getLocalizedMessage()); - - } - } - if(f.getName().startsWith("d")){ - try{ - Case.getCurrentCase().getServices().getTagsManager().addContentTag(f, Category.FOUR.getTagName(), ""); - } - catch (TskCoreException ex){ - System.out.println(" FAIL FAIL" + ex.getLocalizedMessage()); - - } - } - if(f.getName().startsWith("e")){ - try{ - Case.getCurrentCase().getServices().getTagsManager().addContentTag(f, Category.FIVE.getTagName(), ""); - } - catch (TskCoreException ex){ - System.out.println(" FAIL FAIL" + ex.getLocalizedMessage()); - - } - }*/ } /** @@ -655,7 +609,6 @@ public final class ImageAnalyzerController { */ @Override public void run() { - DrawableFile drawableFile = DrawableFile.create(getFile(), true); db.updateFile(drawableFile); } @@ -665,7 +618,7 @@ public final class ImageAnalyzerController { * task that updates one file in database with results from ingest */ private class RemoveFileTask extends FileTask { - + public RemoveFileTask(AbstractFile f) { super(f); } diff --git a/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/datamodel/DrawableDB.java b/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/datamodel/DrawableDB.java index 310e1ae5c6..9868be46d5 100644 --- a/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/datamodel/DrawableDB.java +++ b/ImageAnalyzer/src/org/sleuthkit/autopsy/imageanalyzer/datamodel/DrawableDB.java @@ -690,9 +690,9 @@ public class DrawableDB { dbReadLock(); try { List fileIDsInGroup = getFileIDsInGroup(gk); - - + try{ + // In testing, this method appears to be a lot faster than doing one large select statement for(Long fileID:fileIDsInGroup){ Statement stmt = con.createStatement(); ResultSet analyzedQuery = stmt.executeQuery("select analyzed from drawable_files where obj_id = " + fileID); @@ -700,22 +700,19 @@ public class DrawableDB { if(analyzedQuery.getInt(ANALYZED) == 0){ return false; } - //System.out.println("fileID = " + fileID + ", analyzed = " + analyzedQuery.getInt(ANALYZED)); } - System.out.println("## Group is fully analyzed!!!"); return true; } } catch (SQLException ex) { LOGGER.log(Level.WARNING, "problem counting analyzed files: ", ex); - System.out.println("Error: " + ex.getLocalizedMessage()); } /* + // Old method try (Statement stmt = con.createStatement(); //Can't make this a preprared statement because of the IN ( ... ) ResultSet analyzedQuery = stmt.executeQuery("select count(analyzed) as analyzed from drawable_files where analyzed = 1 and obj_id in (" + StringUtils.join(fileIDsInGroup, ", ") + ")")) { while (analyzedQuery.next()) { - //System.out.println("Full group result: " + analyzedQuery.getInt(ANALYZED) + "\n"); return analyzedQuery.getInt(ANALYZED) == fileIDsInGroup.size(); } } catch (SQLException ex) { @@ -771,7 +768,6 @@ public class DrawableDB { } dbReadUnlock(); } - //System.out.println("Found " + ret.size() + " files matching " + sqlWhereClause); return ret; }