diff --git a/Experimental/nbproject/project.xml b/Experimental/nbproject/project.xml
index 36d3c4660f..de061ccc9d 100644
--- a/Experimental/nbproject/project.xml
+++ b/Experimental/nbproject/project.xml
@@ -6,6 +6,15 @@
org.sleuthkit.autopsy.experimental
+
+ org.netbeans.modules.options.api
+
+
+
+ 1
+ 1.44.1
+
+
org.openide.awt
diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.form b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.form
similarity index 82%
rename from Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.form
rename to Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.form
index 3c5689f031..bd92514bee 100644
--- a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.form
+++ b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.form
@@ -113,10 +113,10 @@
-
+
-
+
@@ -126,14 +126,14 @@
-
+
-
+
@@ -156,17 +156,17 @@
-
+
-
+
-
+
@@ -187,7 +187,7 @@
-
+
@@ -197,10 +197,10 @@
-
+
-
+
@@ -210,17 +210,17 @@
-
+
-
+
-
+
@@ -249,22 +249,22 @@
-
+
-
+
-
+
-
+
@@ -285,14 +285,14 @@
-
+
-
+
diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.java b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.java
similarity index 81%
rename from Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.java
rename to Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.java
index f78cb56644..26b508daaf 100644
--- a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedOptionsPanel.java
+++ b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AdvancedAutoIngestSettingsPanel.java
@@ -25,11 +25,11 @@ import javax.swing.JComponent;
import org.openide.util.NbBundle;
import org.sleuthkit.autopsy.core.UserPreferences;
-class AdvancedOptionsPanel extends javax.swing.JPanel {
+class AdvancedAutoIngestSettingsPanel extends javax.swing.JPanel {
private static final long serialVersionUID = 1L;
- AdvancedOptionsPanel(OptionsPanel.OptionsUiMode mode) {
+ AdvancedAutoIngestSettingsPanel(AutoIngestSettingsPanel.OptionsUiMode mode) {
initComponents();
tbWarning.setLineWrap(true);
tbWarning.setWrapStyleWord(true);
@@ -58,18 +58,18 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
numberOfFileIngestThreadsComboBox.setSelectedItem(UserPreferences.numberOfFileIngestThreads());
}
- private void load(OptionsPanel.OptionsUiMode mode) {
+ private void load(AutoIngestSettingsPanel.OptionsUiMode mode) {
initThreadCount();
spSecondsBetweenJobs.setValue(AutoIngestUserPreferences.getSecondsToSleepBetweenCases());
spMaximumRetryAttempts.setValue(AutoIngestUserPreferences.getMaxNumTimesToProcessImage());
int maxJobsPerCase = AutoIngestUserPreferences.getMaxConcurrentJobsForOneCase();
spConcurrentJobsPerCase.setValue(maxJobsPerCase);
- spSecondsBetweenJobs.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
- spMaximumRetryAttempts.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
- cbTimeoutEnabled.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
- lbSecondsBetweenJobs.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
- lbTimeoutText.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
- lbRetriesAllowed.setEnabled(mode == OptionsPanel.OptionsUiMode.UTILITY || mode == OptionsPanel.OptionsUiMode.AIM);
+ spSecondsBetweenJobs.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
+ spMaximumRetryAttempts.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
+ cbTimeoutEnabled.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
+ lbSecondsBetweenJobs.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
+ lbTimeoutText.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
+ lbRetriesAllowed.setEnabled(mode == AutoIngestSettingsPanel.OptionsUiMode.UTILITY || mode == AutoIngestSettingsPanel.OptionsUiMode.AIM);
cbTimeoutEnabled.setSelected(UserPreferences.getIsTimeOutEnabled());
int timeOutHrs = UserPreferences.getProcessTimeOutHrs();
spTimeoutHours.setValue(timeOutHrs);
@@ -90,7 +90,7 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
uiComponents.add(spTimeoutHours);
uiComponents.add(spConcurrentJobsPerCase);
- String disabledText = " " + NbBundle.getMessage(OptionsPanel.class, "AdvancedOptionsPanel.ItemDisabled.text");
+ String disabledText = " " + NbBundle.getMessage(AutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.ItemDisabled.text");
for (JComponent item : uiComponents) {
if (!item.isEnabled()) {
item.setToolTipText(item.getToolTipText() + disabledText);
@@ -135,7 +135,7 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
lbSecondsBetweenJobs = new javax.swing.JLabel();
spSecondsBetweenJobs = new javax.swing.JSpinner();
lbNumberOfThreads = new javax.swing.JLabel();
- numberOfFileIngestThreadsComboBox = new javax.swing.JComboBox();
+ numberOfFileIngestThreadsComboBox = new javax.swing.JComboBox<>();
lbRestartRequired = new javax.swing.JLabel();
lbRetriesAllowed = new javax.swing.JLabel();
spMainScrollPane = new javax.swing.JScrollPane();
@@ -150,13 +150,13 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
spTimeoutHours = new javax.swing.JSpinner();
lbSecondsBetweenJobsSeconds = new javax.swing.JLabel();
- org.openide.awt.Mnemonics.setLocalizedText(lbSecondsBetweenJobs, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbSecondsBetweenJobs.text")); // NOI18N
- lbSecondsBetweenJobs.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbSecondsBetweenJobs.toolTipText")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbSecondsBetweenJobs, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbSecondsBetweenJobs.text")); // NOI18N
+ lbSecondsBetweenJobs.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbSecondsBetweenJobs.toolTipText")); // NOI18N
spSecondsBetweenJobs.setModel(new javax.swing.SpinnerNumberModel(30, 30, 3600, 10));
- spSecondsBetweenJobs.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.spSecondsBetweenJobs.toolTipText")); // NOI18N
+ spSecondsBetweenJobs.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.spSecondsBetweenJobs.toolTipText")); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(lbNumberOfThreads, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbNumberOfThreads.text")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbNumberOfThreads, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbNumberOfThreads.text")); // NOI18N
numberOfFileIngestThreadsComboBox.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
@@ -164,33 +164,33 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
}
});
- lbRestartRequired.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/experimental/images/warning16.png"))); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(lbRestartRequired, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbRestartRequired.text")); // NOI18N
+ lbRestartRequired.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/sleuthkit/autopsy/corecomponents/warning16.png"))); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbRestartRequired, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbRestartRequired.text")); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(lbRetriesAllowed, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbRetriesAllowed.text")); // NOI18N
- lbRetriesAllowed.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbRetriesAllowed.toolTipText")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbRetriesAllowed, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbRetriesAllowed.text")); // NOI18N
+ lbRetriesAllowed.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbRetriesAllowed.toolTipText")); // NOI18N
lbRetriesAllowed.setVerticalAlignment(javax.swing.SwingConstants.BOTTOM);
tbWarning.setEditable(false);
tbWarning.setColumns(20);
tbWarning.setFont(new java.awt.Font("Monospaced", 1, 14)); // NOI18N
tbWarning.setRows(5);
- tbWarning.setText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.tbWarning.text")); // NOI18N
+ tbWarning.setText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.tbWarning.text")); // NOI18N
tbWarning.setAutoscrolls(false);
spMainScrollPane.setViewportView(tbWarning);
- org.openide.awt.Mnemonics.setLocalizedText(lbTimeoutText, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbTimeoutText.text")); // NOI18N
- lbTimeoutText.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbTimeoutText.toolTipText")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbTimeoutText, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbTimeoutText.text")); // NOI18N
+ lbTimeoutText.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbTimeoutText.toolTipText")); // NOI18N
lbTimeoutText.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lbTimeoutTextMouseClicked(evt);
}
});
- org.openide.awt.Mnemonics.setLocalizedText(lbTimeoutHours, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbTimeoutHours.text")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbTimeoutHours, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbTimeoutHours.text")); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(cbTimeoutEnabled, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.cbTimeoutEnabled.text")); // NOI18N
- cbTimeoutEnabled.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.cbTimeoutEnabled.toolTipText")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(cbTimeoutEnabled, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.cbTimeoutEnabled.text")); // NOI18N
+ cbTimeoutEnabled.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.cbTimeoutEnabled.toolTipText")); // NOI18N
cbTimeoutEnabled.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
cbTimeoutEnabledItemStateChanged(evt);
@@ -198,19 +198,19 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
});
spMaximumRetryAttempts.setModel(new javax.swing.SpinnerNumberModel(2, 0, 9999999, 1));
- spMaximumRetryAttempts.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.spMaximumRetryAttempts.toolTipText")); // NOI18N
+ spMaximumRetryAttempts.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.spMaximumRetryAttempts.toolTipText")); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(lbConcurrentJobsPerCase, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbConcurrentJobsPerCase.text")); // NOI18N
- lbConcurrentJobsPerCase.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbConcurrentJobsPerCase.toolTipText")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbConcurrentJobsPerCase, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbConcurrentJobsPerCase.text")); // NOI18N
+ lbConcurrentJobsPerCase.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbConcurrentJobsPerCase.toolTipText")); // NOI18N
lbConcurrentJobsPerCase.setVerticalAlignment(javax.swing.SwingConstants.BOTTOM);
spConcurrentJobsPerCase.setModel(new javax.swing.SpinnerNumberModel(3, 1, 100, 1));
- spConcurrentJobsPerCase.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbConcurrentJobsPerCase.toolTipText")); // NOI18N
+ spConcurrentJobsPerCase.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedOptionsPanel.lbConcurrentJobsPerCase.toolTipText")); // NOI18N
spTimeoutHours.setModel(new javax.swing.SpinnerNumberModel(60, 1, 100000, 1));
- spTimeoutHours.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.spTimeoutHours.toolTipText")); // NOI18N
+ spTimeoutHours.setToolTipText(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.spTimeoutHours.toolTipText")); // NOI18N
- org.openide.awt.Mnemonics.setLocalizedText(lbSecondsBetweenJobsSeconds, org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.lbSecondsBetweenJobsSeconds.text")); // NOI18N
+ org.openide.awt.Mnemonics.setLocalizedText(lbSecondsBetweenJobsSeconds, org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.lbSecondsBetweenJobsSeconds.text")); // NOI18N
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
@@ -289,7 +289,7 @@ class AdvancedOptionsPanel extends javax.swing.JPanel {
.addContainerGap(241, Short.MAX_VALUE))
);
- spMaximumRetryAttempts.getAccessibleContext().setAccessibleDescription(org.openide.util.NbBundle.getMessage(AdvancedOptionsPanel.class, "AdvancedOptionsPanel.spMaximumRetryAttempts.AccessibleContext.accessibleDescription")); // NOI18N
+ spMaximumRetryAttempts.getAccessibleContext().setAccessibleDescription(org.openide.util.NbBundle.getMessage(AdvancedAutoIngestSettingsPanel.class, "AdvancedAutoIngestSettingsPanel.spMaximumRetryAttempts.AccessibleContext.accessibleDescription")); // NOI18N
}// //GEN-END:initComponents
private void cbTimeoutEnabledItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_cbTimeoutEnabledItemStateChanged
diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/OptionsPanel.form b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.form
similarity index 100%
rename from Experimental/src/org/sleuthkit/autopsy/experimental/configuration/OptionsPanel.form
rename to Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.form
diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/OptionsPanel.java b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java
similarity index 100%
rename from Experimental/src/org/sleuthkit/autopsy/experimental/configuration/OptionsPanel.java
rename to Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanel.java
diff --git a/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanelController.java b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanelController.java
new file mode 100644
index 0000000000..a72e8ded37
--- /dev/null
+++ b/Experimental/src/org/sleuthkit/autopsy/experimental/configuration/AutoIngestSettingsPanelController.java
@@ -0,0 +1,131 @@
+/*
+ * Autopsy Forensic Browser
+ *
+ * Copyright 2013-2014 Basis Technology Corp.
+ * Contact: carrier sleuthkit org
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.sleuthkit.autopsy.experimental.configuration;
+
+import java.beans.PropertyChangeListener;
+import java.beans.PropertyChangeSupport;
+import javax.swing.JComponent;
+import org.netbeans.spi.options.OptionsPanelController;
+import org.openide.util.HelpCtx;
+import org.openide.util.Lookup;
+import org.openide.util.NbBundle;
+import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
+import java.util.logging.Level;
+import org.sleuthkit.autopsy.coreutils.Logger;
+
+@OptionsPanelController.TopLevelRegistration(categoryName = "#OptionsCategory_Name_Auto_Ingest",
+ iconBase = "org/sleuthkit/autopsy/images/User-Group-icon-green32.png",
+ position = 3,
+ keywords = "#OptionsCategory_Keywords_Auto_Ingest_Settings",
+ keywordsCategory = "Auto Ingest")
+public final class AutoIngestSettingsPanelController extends OptionsPanelController {
+
+ private AutoIngestSettingsPanel panel;
+ private final PropertyChangeSupport pcs = new PropertyChangeSupport(this);
+ private boolean changed;
+ private static final Logger logger = Logger.getLogger(AutoIngestSettingsPanelController.class.getName());
+
+ @Override
+ public void update() {
+ getPanel().load();
+ changed = false;
+ }
+
+ @Override
+ public void applyChanges() {
+ getPanel().store();
+ changed = false;
+ }
+
+ @Override
+ public void cancel() {
+ }
+
+ @Override
+ public boolean isValid() {
+ return getPanel().valid();
+ }
+
+ @Override
+ public boolean isChanged() {
+ return changed;
+ }
+
+ @Override
+ public HelpCtx getHelpCtx() {
+ return null;
+ }
+
+ @Override
+ public JComponent getComponent(Lookup masterLookup) {
+ return getPanel();
+ }
+
+ @Override
+ public void addPropertyChangeListener(PropertyChangeListener l) {
+ if (pcs.getPropertyChangeListeners().length == 0) {
+ pcs.addPropertyChangeListener(l);
+ }
+ }
+
+ @Override
+ public void removePropertyChangeListener(PropertyChangeListener l) {
+ /**
+ * Note the NetBeans Framework does not appear to call this at all. We
+ * are using NetBeans 7.3.1 Build 201306052037. Perhaps in a future
+ * version of the Framework this will be resolved, but for now, simply
+ * don't unregister anything and add one time only in the
+ * addPropertyChangeListener() method above.
+ */
+ }
+
+ private AutoIngestSettingsPanel getPanel() {
+ if (panel == null) {
+ panel = new AutoIngestSettingsPanel(this);
+ }
+ return panel;
+ }
+
+ void changed() {
+ if (!changed) {
+ changed = true;
+
+ try {
+ pcs.firePropertyChange(OptionsPanelController.PROP_CHANGED, false, true);
+ } catch (Exception e) {
+ logger.log(Level.SEVERE, "GeneralOptionsPanelController listener threw exception", e); //NON-NLS
+ MessageNotifyUtil.Notify.show(
+ NbBundle.getMessage(this.getClass(), "GeneralOptionsPanelController.moduleErr"),
+ NbBundle.getMessage(this.getClass(), "GeneralOptionsPanelController.moduleErr.msg"),
+ MessageNotifyUtil.MessageType.ERROR);
+ }
+ }
+
+ try {
+ pcs.firePropertyChange(OptionsPanelController.PROP_VALID, null, null);
+ } catch (Exception e) {
+ logger.log(Level.SEVERE, "GeneralOptionsPanelController listener threw exception", e); //NON-NLS
+ MessageNotifyUtil.Notify.show(
+ NbBundle.getMessage(this.getClass(), "GeneralOptionsPanelController.moduleErr"),
+ NbBundle.getMessage(this.getClass(), "GeneralOptionsPanelController.moduleErr.msg"),
+ MessageNotifyUtil.MessageType.ERROR);
+ }
+ }
+}
+