From 509684cebcf4cf42e64368d4518b258e78f7bfbe Mon Sep 17 00:00:00 2001 From: Richard Cordovano Date: Wed, 4 Dec 2013 15:31:46 -0500 Subject: [PATCH] Corrected handling of always calc hashes flag --- .../autopsy/hashdatabase/HashDbManager.java | 4 +- .../hashdatabase/HashDbSimpleConfigPanel.java | 41 ++++--------------- 2 files changed, 10 insertions(+), 35 deletions(-) diff --git a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbManager.java b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbManager.java index f5abf778e4..6411d3aa0e 100755 --- a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbManager.java +++ b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbManager.java @@ -77,7 +77,7 @@ public class HashDbManager implements PropertyChangeListener { private List knownBadHashSets = new ArrayList<>(); private Set hashSetNames = new HashSet<>(); private Set hashSetPaths = new HashSet<>(); - private boolean alwaysCalculateHashes = false; + private boolean alwaysCalculateHashes = true; /** * Gets the singleton instance of this class. @@ -566,7 +566,7 @@ public class HashDbManager implements PropertyChangeListener { } else { Logger.getLogger(HashDbManager.class.getName()).log(Level.WARNING, " element "); - alwaysCalculateHashes = false; + alwaysCalculateHashes = true; } return true; diff --git a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbSimpleConfigPanel.java b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbSimpleConfigPanel.java index ed9981f849..a6050c1700 100644 --- a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbSimpleConfigPanel.java +++ b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbSimpleConfigPanel.java @@ -16,6 +16,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.sleuthkit.autopsy.hashdatabase; import java.awt.event.ActionEvent; @@ -35,7 +36,8 @@ import org.sleuthkit.autopsy.hashdatabase.HashDbManager.HashDb; /** * Instances of this class provide a simplified UI for managing the hash sets configuration. */ -public class HashDbSimpleConfigPanel extends javax.swing.JPanel { +public class HashDbSimpleConfigPanel extends javax.swing.JPanel { + private HashDatabasesTableModel knownTableModel; private HashDatabasesTableModel knownBadTableModel; @@ -49,6 +51,7 @@ public class HashDbSimpleConfigPanel extends javax.swing.JPanel { private void customizeComponents() { customizeHashDbsTable(jScrollPane1, knownHashTable, knownTableModel); customizeHashDbsTable(jScrollPane2, knownBadHashTable, knownBadTableModel); + alwaysCalcHashesCheckbox.setSelected(HashDbManager.getInstance().getAlwaysCalculateHashes()); // Add a listener to the always calculate hashes checkbox component. // The listener passes the user's selection on to the hash database manager. @@ -81,42 +84,14 @@ public class HashDbSimpleConfigPanel extends javax.swing.JPanel { } void load() { - knownTableModel.refresh(); - knownBadTableModel.refresh(); - refreshAlwaysCalcHashesCheckbox(); + knownTableModel.load(); + knownBadTableModel.load(); } void save() { HashDbManager.getInstance().save(); } - - private void refreshAlwaysCalcHashesCheckbox() { - boolean noHashDbsConfiguredForIngest = true; - for (HashDb hashDb : HashDbManager.getInstance().getAllHashSets()) { - try { - if (hashDb.getSearchDuringIngest()== true && hashDb.hasLookupIndex()) { - noHashDbsConfiguredForIngest = false; - break; - } - } - catch (TskCoreException ex) { - Logger.getLogger(HashDbSimpleConfigPanel.class.getName()).log(Level.SEVERE, "Error getting info for " + hashDb.getHashSetName() + " hash database", ex); - } - } - - // If there are no hash databases configured for use during file ingest, - // default to always calculating hashes of the files. - if (noHashDbsConfiguredForIngest) { - alwaysCalcHashesCheckbox.setEnabled(true); - alwaysCalcHashesCheckbox.setSelected(true); - HashDbManager.getInstance().setAlwaysCalculateHashes(true); - } else { - alwaysCalcHashesCheckbox.setEnabled(false); - alwaysCalcHashesCheckbox.setSelected(false); - HashDbManager.getInstance().setAlwaysCalculateHashes(false); - } - } - + private class HashDatabasesTableModel extends AbstractTableModel { private final HashDbManager.HashDb.KnownFilesType hashDatabasesType; private List hashDatabases; @@ -135,7 +110,7 @@ public class HashDbSimpleConfigPanel extends javax.swing.JPanel { } } - private void refresh() { + private void load() { getHashDatabases(); fireTableDataChanged(); }