diff --git a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbCreateDatabaseDialog.java b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbCreateDatabaseDialog.java index 90b852310d..f17eabd0bd 100644 --- a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbCreateDatabaseDialog.java +++ b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbCreateDatabaseDialog.java @@ -302,19 +302,16 @@ final class HashDbCreateDatabaseDialog extends javax.swing.JDialog { } else { type = DBType.KNOWN_BAD; } + + try + { + HashDb db = HashDb.createHashDatabase(databaseNameTextField.getText(), databasePathTextField.getText(), useForIngestCheckbox.isSelected(), sendInboxMessagesCheckbox.isSelected(), type); + } catch (TskException ex) { + logger.log(Level.WARNING, "Database creation error: ", ex); + JOptionPane.showMessageDialog(this, "Database file cannot be created.\n"); + return; + } - /// @todo Call the HashDb create factory method here -// HashDb db = HashDb.create(databaseNameTextField.getText(), -// Arrays.asList(new String[] {databasePathTextField.getText()}), -// useForIngestCheckbox.isSelected(), -// sendInboxMessagesCheckbox.isSelected(), -// type); - -// if(type == DBType.KNOWN_BAD) { -// HashDbXML.getCurrent().addKnownBadSet(db); -// } else if(type == DBType.NSRL) { -// HashDbXML.getCurrent().setNSRLSet(db); -// } databaseName = databaseNameTextField.getText(); this.dispose(); }//GEN-LAST:event_okButtonActionPerformed diff --git a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbImportDatabaseDialog.java b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbImportDatabaseDialog.java index d62c764b9c..71d769f8df 100644 --- a/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbImportDatabaseDialog.java +++ b/HashDatabase/src/org/sleuthkit/autopsy/hashdatabase/HashDbImportDatabaseDialog.java @@ -303,17 +303,16 @@ final class HashDbImportDatabaseDialog extends javax.swing.JDialog { } else { type = DBType.KNOWN_BAD; } - // RJCTODO: Sam is replacing this class. -// HashDb db = new HashDb(databaseNameTextField.getText(), -// Arrays.asList(new String[] {databasePathTextField.getText()}), -// useForIngestCheckbox.isSelected(), -// sendInboxMessagesCheckbox.isSelected(), -// type); -// if(type == DBType.KNOWN_BAD) { -// HashDbXML.getCurrent().addKnownBadSet(db); -// } else if(type == DBType.NSRL) { -// HashDbXML.getCurrent().setNSRLSet(db); -// } + + try + { + HashDb db = HashDb.openHashDatabase(databaseNameTextField.getText(), databasePathTextField.getText(), useForIngestCheckbox.isSelected(), sendInboxMessagesCheckbox.isSelected(), type); + } catch (TskException ex) { + logger.log(Level.WARNING, "Invalid database: ", ex); + JOptionPane.showMessageDialog(this, "Database file you chose cannot be opened.\n" + "If it was just an index, please try to recreate it from the database"); + return; + } + databaseName = databaseNameTextField.getText(); this.dispose(); }//GEN-LAST:event_okButtonActionPerformed