19 package org.sleuthkit.autopsy.casemodule;
21 import org.openide.util.NbBundle;
22 import java.awt.Component;
23 import java.util.List;
24 import javax.swing.JButton;
25 import javax.swing.JOptionPane;
26 import javax.swing.event.ChangeListener;
27 import org.openide.WizardDescriptor;
28 import org.openide.util.HelpCtx;
29 import org.openide.util.NbBundle.Messages;
30 import org.openide.windows.WindowManager;
43 @SuppressWarnings(
"PMD.SingularField")
44 class AddImageWizardIngestConfigPanel extends ShortcutWizardDescriptorPanel {
46 @Messages(
"AddImageWizardIngestConfigPanel.name.text=Configure Ingest Modules")
47 private final IngestJobSettingsPanel ingestJobSettingsPanel;
52 private Component component = null;
53 private String lastProfileUsed = AddImageWizardIngestConfigPanel.class.getCanonicalName();
54 private final AddImageWizardAddingProgressPanel progressPanel;
56 AddImageWizardIngestConfigPanel(AddImageWizardAddingProgressPanel proPanel) {
57 this.progressPanel = proPanel;
58 IngestJobSettings ingestJobSettings =
new IngestJobSettings(AddImageWizardIngestConfigPanel.class.getCanonicalName());
59 showWarnings(ingestJobSettings);
62 this.ingestJobSettingsPanel =
new IngestJobSettingsPanel(ingestJobSettings);
75 public Component getComponent() {
76 if (component == null) {
77 component =
new AddImageWizardIngestConfigVisual(this.ingestJobSettingsPanel);
78 component.setName(Bundle.AddImageWizardIngestConfigPanel_name_text());
90 public HelpCtx getHelp() {
92 return HelpCtx.DEFAULT_HELP;
104 public boolean isValid() {
120 public final void addChangeListener(ChangeListener l) {
129 public final void removeChangeListener(ChangeListener l) {
145 public void readSettings(WizardDescriptor settings) {
146 JButton cancel =
new JButton(
147 NbBundle.getMessage(
this.getClass(),
"AddImageWizardIngestConfigPanel.CANCEL_BUTTON.text"));
148 cancel.setEnabled(
false);
149 settings.setOptions(
new Object[]{WizardDescriptor.PREVIOUS_OPTION, WizardDescriptor.NEXT_OPTION, WizardDescriptor.FINISH_OPTION, cancel});
162 public void storeSettings(WizardDescriptor settings) {
163 IngestJobSettings ingestJobSettings = ingestJobSettingsPanel.getSettings();
164 ingestJobSettings.save();
165 progressPanel.setIngestJobSettings(ingestJobSettings);
168 private static void showWarnings(IngestJobSettings ingestJobSettings) {
169 List<String> warnings = ingestJobSettings.getWarnings();
170 if (warnings.isEmpty() ==
false) {
171 StringBuilder warningMessage =
new StringBuilder();
172 for (String warning : warnings) {
173 warningMessage.append(warning).append(
"\n");
175 JOptionPane.showMessageDialog(WindowManager.getDefault().getMainWindow(), warningMessage.toString());
185 public void processThisPanelBeforeSkipped() {
186 if (!(ModuleSettings.getConfigSetting(IngestProfileSelectionWizardPanel.getLastProfilePropertiesFile(), AddImageWizardIterator.getPropLastprofileName()) == null)
187 && !ModuleSettings.getConfigSetting(IngestProfileSelectionWizardPanel.getLastProfilePropertiesFile(), AddImageWizardIterator.getPropLastprofileName()).isEmpty()) {
188 lastProfileUsed = ModuleSettings.getConfigSetting(IngestProfileSelectionWizardPanel.getLastProfilePropertiesFile(), AddImageWizardIterator.getPropLastprofileName());
192 IngestJobSettings ingestJobSettings =
new IngestJobSettings(lastProfileUsed);
193 progressPanel.setIngestJobSettings(ingestJobSettings);