mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-15 09:17:42 +00:00
Fix ISEs and NPEs emanating from IngestJobSettingsPanel
This commit is contained in:
parent
63a1717e7b
commit
b11490a9ef
@ -22,7 +22,6 @@ import java.awt.Component;
|
|||||||
import java.awt.Dimension;
|
import java.awt.Dimension;
|
||||||
import java.awt.Toolkit;
|
import java.awt.Toolkit;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
import java.awt.event.WindowAdapter;
|
import java.awt.event.WindowAdapter;
|
||||||
import java.awt.event.WindowEvent;
|
import java.awt.event.WindowEvent;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@ -37,7 +36,6 @@ import javax.swing.JTable;
|
|||||||
import javax.swing.ListSelectionModel;
|
import javax.swing.ListSelectionModel;
|
||||||
import javax.swing.SwingUtilities;
|
import javax.swing.SwingUtilities;
|
||||||
import javax.swing.event.ListSelectionEvent;
|
import javax.swing.event.ListSelectionEvent;
|
||||||
import javax.swing.event.ListSelectionListener;
|
|
||||||
import javax.swing.table.AbstractTableModel;
|
import javax.swing.table.AbstractTableModel;
|
||||||
import javax.swing.table.DefaultTableCellRenderer;
|
import javax.swing.table.DefaultTableCellRenderer;
|
||||||
import javax.swing.table.TableColumn;
|
import javax.swing.table.TableColumn;
|
||||||
@ -61,10 +59,10 @@ public final class IngestJobSettingsPanel extends javax.swing.JPanel {
|
|||||||
private static ImageIcon infoIcon = new ImageIcon(IngestJobSettingsPanel.class.getResource("/org/sleuthkit/autopsy/images/information-frame.png"));
|
private static ImageIcon infoIcon = new ImageIcon(IngestJobSettingsPanel.class.getResource("/org/sleuthkit/autopsy/images/information-frame.png"));
|
||||||
private final IngestJobSettings settings;
|
private final IngestJobSettings settings;
|
||||||
private final List<Content> dataSources;
|
private final List<Content> dataSources;
|
||||||
|
private final List<IngestJobInfo> ingestJobs;
|
||||||
private final List<IngestModuleModel> modules;
|
private final List<IngestModuleModel> modules;
|
||||||
private List<IngestJobInfo> ingestJobs;
|
private final IngestModulesTableModel tableModel = new IngestModulesTableModel();
|
||||||
private IngestModuleModel selectedModule;
|
private IngestModuleModel selectedModule;
|
||||||
private IngestModulesTableModel tableModel = new IngestModulesTableModel();
|
|
||||||
private static final Logger logger = Logger.getLogger(IngestJobSettingsPanel.class.getName());
|
private static final Logger logger = Logger.getLogger(IngestJobSettingsPanel.class.getName());
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -75,18 +73,12 @@ public final class IngestJobSettingsPanel extends javax.swing.JPanel {
|
|||||||
*/
|
*/
|
||||||
public IngestJobSettingsPanel(IngestJobSettings settings) {
|
public IngestJobSettingsPanel(IngestJobSettings settings) {
|
||||||
this.settings = settings;
|
this.settings = settings;
|
||||||
this.modules = new ArrayList<>();
|
dataSources = new ArrayList<>();
|
||||||
|
ingestJobs = new ArrayList<>();
|
||||||
|
modules = new ArrayList<>();
|
||||||
for (IngestModuleTemplate moduleTemplate : settings.getIngestModuleTemplates()) {
|
for (IngestModuleTemplate moduleTemplate : settings.getIngestModuleTemplates()) {
|
||||||
this.modules.add(new IngestModuleModel(moduleTemplate));
|
modules.add(new IngestModuleModel(moduleTemplate));
|
||||||
}
|
}
|
||||||
SleuthkitCase skCase = Case.getCurrentCase().getSleuthkitCase();
|
|
||||||
try {
|
|
||||||
ingestJobs = skCase.getIngestJobs();
|
|
||||||
} catch (TskCoreException ex) {
|
|
||||||
logger.log(Level.SEVERE, "Failed to load ingest job information.", ex);
|
|
||||||
ingestJobs = new ArrayList<>();
|
|
||||||
}
|
|
||||||
this.dataSources = new ArrayList<>();
|
|
||||||
initComponents();
|
initComponents();
|
||||||
customizeComponents();
|
customizeComponents();
|
||||||
}
|
}
|
||||||
@ -100,18 +92,20 @@ public final class IngestJobSettingsPanel extends javax.swing.JPanel {
|
|||||||
*/
|
*/
|
||||||
IngestJobSettingsPanel(IngestJobSettings settings, List<Content> dataSources) {
|
IngestJobSettingsPanel(IngestJobSettings settings, List<Content> dataSources) {
|
||||||
this.settings = settings;
|
this.settings = settings;
|
||||||
this.modules = new ArrayList<>();
|
this.dataSources = dataSources;
|
||||||
|
ingestJobs = new ArrayList<>();
|
||||||
|
try {
|
||||||
|
SleuthkitCase skCase = Case.getCurrentCase().getSleuthkitCase();
|
||||||
|
ingestJobs.addAll(skCase.getIngestJobs());
|
||||||
|
} catch (IllegalStateException ex) {
|
||||||
|
logger.log(Level.SEVERE, "No open case", ex);
|
||||||
|
} catch (TskCoreException ex) {
|
||||||
|
logger.log(Level.SEVERE, "Failed to load ingest job information", ex);
|
||||||
|
}
|
||||||
|
modules = new ArrayList<>();
|
||||||
for (IngestModuleTemplate moduleTemplate : settings.getIngestModuleTemplates()) {
|
for (IngestModuleTemplate moduleTemplate : settings.getIngestModuleTemplates()) {
|
||||||
this.modules.add(new IngestModuleModel(moduleTemplate));
|
this.modules.add(new IngestModuleModel(moduleTemplate));
|
||||||
}
|
}
|
||||||
SleuthkitCase skCase = Case.getCurrentCase().getSleuthkitCase();
|
|
||||||
try {
|
|
||||||
ingestJobs = skCase.getIngestJobs();
|
|
||||||
} catch (TskCoreException ex) {
|
|
||||||
logger.log(Level.SEVERE, "Failed to load ingest job information.", ex);
|
|
||||||
ingestJobs = new ArrayList<>();
|
|
||||||
}
|
|
||||||
this.dataSources = dataSources;
|
|
||||||
initComponents();
|
initComponents();
|
||||||
customizeComponents();
|
customizeComponents();
|
||||||
}
|
}
|
||||||
@ -488,6 +482,8 @@ public final class IngestJobSettingsPanel extends javax.swing.JPanel {
|
|||||||
*/
|
*/
|
||||||
private class IngestModulesTableModel extends AbstractTableModel {
|
private class IngestModulesTableModel extends AbstractTableModel {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getRowCount() {
|
public int getRowCount() {
|
||||||
return modules.size();
|
return modules.size();
|
||||||
@ -529,7 +525,7 @@ public final class IngestJobSettingsPanel extends javax.swing.JPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private ImageIcon getIcon(IngestModuleModel module) {
|
private ImageIcon getIcon(IngestModuleModel module) {
|
||||||
if (dataSources.isEmpty()) {
|
if (dataSources.isEmpty() || ingestJobs.isEmpty()) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
boolean previousVersionRun = false;
|
boolean previousVersionRun = false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user