mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-15 09:17:42 +00:00
ingest refresh setting: use radio with 3 options instead of slider
This commit is contained in:
parent
22f4dbc7b4
commit
ddd98fb6ef
@ -16,9 +16,6 @@ IngestDialogForm.cancelButton.text=Cancel
|
|||||||
IngestDialogForm.startButton.text=Start
|
IngestDialogForm.startButton.text=Start
|
||||||
IngestDialogForm.jLabel1.text=Ingest Services
|
IngestDialogForm.jLabel1.text=Ingest Services
|
||||||
IngestTopComponent.refreshFreqLabel.text=Refresh frequency
|
IngestTopComponent.refreshFreqLabel.text=Refresh frequency
|
||||||
IngestDialogPanel.freqSliderLabel.text=Refresh interval (minutes)
|
|
||||||
IngestDialogPanel.freqSliderLabel.toolTipText=null
|
|
||||||
IngestDialogPanel.freqSlider.toolTipText=<html>Maximum time in minutes for ingest modules to refresh and report data to user. <br />Lower value presents data more frequently but may impact performance and lenghten the overall ingest run.<br />Higher value is improves performance, but data will be refreshed less frequently (recommended for an unattended run).<br />The value can be adjusted only when no ingest module is currently running</html>
|
|
||||||
IngestMessageDetailsPanel.backButton.text=
|
IngestMessageDetailsPanel.backButton.text=
|
||||||
IngestMessageDetailsPanel.viewArtifactButton.text=Go to Result
|
IngestMessageDetailsPanel.viewArtifactButton.text=Go to Result
|
||||||
IngestMessageDetailsPanel.viewContentButton.text=Go to Directory
|
IngestMessageDetailsPanel.viewContentButton.text=Go to Directory
|
||||||
@ -31,3 +28,11 @@ IngestMessagesToolbar.toolTipText=
|
|||||||
IngestMessageDetailsPanel.copyMenuItem.text=Copy
|
IngestMessageDetailsPanel.copyMenuItem.text=Copy
|
||||||
IngestMessageDetailsPanel.selectAllMenuItem.text=Select All
|
IngestMessageDetailsPanel.selectAllMenuItem.text=Select All
|
||||||
IngestMessageTopComponent.displayName=Ingest Inbox
|
IngestMessageTopComponent.displayName=Ingest Inbox
|
||||||
|
IngestDialogPanel.timeLabel.text=Max. time between updates:
|
||||||
|
IngestDialogPanel.timeLabel.toolTipText=Choose the maximum time between updates from background tasks
|
||||||
|
IngestDialogPanel.timeRadioButton1.text=20 minutes (fastest ingest)
|
||||||
|
IngestDialogPanel.timeRadioButton1.toolTipText=20 mins. (fastest ingest time)
|
||||||
|
IngestDialogPanel.timeRadioButton2.toolTipText=10 minutes (average ingest time)
|
||||||
|
IngestDialogPanel.timeRadioButton2.text=10 minutes (avg. ingest)
|
||||||
|
IngestDialogPanel.timeRadioButton3.toolTipText=5 minutes (overall ingest time will be longest)
|
||||||
|
IngestDialogPanel.timeRadioButton3.text=5 minutes (longest ingest)
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
<?xml version="1.1" encoding="UTF-8" ?>
|
<?xml version="1.1" encoding="UTF-8" ?>
|
||||||
|
|
||||||
<Form version="1.5" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
|
<Form version="1.5" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
|
||||||
|
<NonVisualComponents>
|
||||||
|
<Component class="javax.swing.ButtonGroup" name="timeGroup">
|
||||||
|
</Component>
|
||||||
|
</NonVisualComponents>
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
||||||
<Dimension value="[522, 257]"/>
|
<Dimension value="[522, 257]"/>
|
||||||
@ -21,19 +25,11 @@
|
|||||||
<Layout>
|
<Layout>
|
||||||
<DimensionLayout dim="0">
|
<DimensionLayout dim="0">
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Group type="103" groupAlignment="1" attributes="0">
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<Component id="servicesScrollPane" pref="195" max="32767" attributes="1"/>
|
||||||
<Group type="103" groupAlignment="0" max="-2" attributes="0">
|
<Component id="timePanel" alignment="0" max="32767" attributes="1"/>
|
||||||
<Component id="freqSlider" min="0" pref="0" max="32767" attributes="1"/>
|
|
||||||
<Component id="servicesScrollPane" alignment="0" max="32767" attributes="1"/>
|
|
||||||
</Group>
|
|
||||||
</Group>
|
|
||||||
<Group type="102" alignment="0" attributes="0">
|
|
||||||
<EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
|
|
||||||
<Component id="freqSliderLabel" min="-2" max="-2" attributes="0"/>
|
|
||||||
</Group>
|
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="jPanel1" min="-2" max="32767" attributes="0"/>
|
<Component id="jPanel1" min="-2" max="32767" attributes="0"/>
|
||||||
@ -46,47 +42,28 @@
|
|||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Component id="jPanel1" alignment="0" pref="235" max="32767" attributes="0"/>
|
<Component id="jPanel1" alignment="0" pref="284" max="32767" attributes="0"/>
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Component id="servicesScrollPane" pref="170" max="32767" attributes="0"/>
|
<Component id="servicesScrollPane" pref="159" max="32767" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace pref="7" max="32767" attributes="0"/>
|
||||||
<Component id="freqSlider" min="-2" max="-2" attributes="0"/>
|
<Component id="timePanel" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
|
|
||||||
<Component id="freqSliderLabel" min="-2" max="-2" attributes="0"/>
|
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
</Group>
|
</Group>
|
||||||
</DimensionLayout>
|
</DimensionLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
<SubComponents>
|
<SubComponents>
|
||||||
<Component class="javax.swing.JSlider" name="freqSlider">
|
|
||||||
<Properties>
|
|
||||||
<Property name="majorTickSpacing" type="int" value="5"/>
|
|
||||||
<Property name="maximum" type="int" value="30"/>
|
|
||||||
<Property name="minorTickSpacing" type="int" value="2"/>
|
|
||||||
<Property name="paintLabels" type="boolean" value="true"/>
|
|
||||||
<Property name="paintTicks" type="boolean" value="true"/>
|
|
||||||
<Property name="snapToTicks" type="boolean" value="true"/>
|
|
||||||
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.freqSlider.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="value" type="int" value="15"/>
|
|
||||||
</Properties>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="freqSliderLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.freqSliderLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.freqSliderLabel.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JScrollPane" name="servicesScrollPane">
|
<Container class="javax.swing.JScrollPane" name="servicesScrollPane">
|
||||||
<Properties>
|
<Properties>
|
||||||
|
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
|
||||||
|
<Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
|
||||||
|
<LineBorder>
|
||||||
|
<Color PropertyName="color" blue="a0" green="a0" red="a0" type="rgb"/>
|
||||||
|
</LineBorder>
|
||||||
|
</Border>
|
||||||
|
</Property>
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
||||||
<Dimension value="[160, 160]"/>
|
<Dimension value="[160, 160]"/>
|
||||||
</Property>
|
</Property>
|
||||||
@ -137,7 +114,7 @@
|
|||||||
<DimensionLayout dim="1">
|
<DimensionLayout dim="1">
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="1" attributes="0">
|
<Group type="102" alignment="1" attributes="0">
|
||||||
<Component id="jScrollPane1" pref="183" max="32767" attributes="0"/>
|
<Component id="jScrollPane1" pref="232" max="32767" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="jSeparator2" min="-2" pref="10" max="-2" attributes="0"/>
|
<Component id="jSeparator2" min="-2" pref="10" max="-2" attributes="0"/>
|
||||||
<EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
|
<EmptySpace min="-2" pref="0" max="-2" attributes="0"/>
|
||||||
@ -183,5 +160,93 @@
|
|||||||
</Container>
|
</Container>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
|
<Container class="javax.swing.JPanel" name="timePanel">
|
||||||
|
<Properties>
|
||||||
|
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
|
||||||
|
<Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo">
|
||||||
|
<LineBorder>
|
||||||
|
<Color PropertyName="color" blue="a0" green="a0" red="a0" type="rgb"/>
|
||||||
|
</LineBorder>
|
||||||
|
</Border>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
|
||||||
|
<Layout>
|
||||||
|
<DimensionLayout dim="0">
|
||||||
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
|
<Group type="102" alignment="0" attributes="0">
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
|
<Component id="timeRadioButton3" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="timeRadioButton1" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="timeLabel" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="timeRadioButton2" alignment="0" min="-2" max="-2" attributes="0"/>
|
||||||
|
</Group>
|
||||||
|
<EmptySpace pref="28" max="32767" attributes="0"/>
|
||||||
|
</Group>
|
||||||
|
</Group>
|
||||||
|
</DimensionLayout>
|
||||||
|
<DimensionLayout dim="1">
|
||||||
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
|
<Group type="102" alignment="1" attributes="0">
|
||||||
|
<EmptySpace max="32767" attributes="0"/>
|
||||||
|
<Component id="timeLabel" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="timeRadioButton1" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="timeRadioButton2" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="timeRadioButton3" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace min="-2" pref="20" max="-2" attributes="0"/>
|
||||||
|
</Group>
|
||||||
|
</Group>
|
||||||
|
</DimensionLayout>
|
||||||
|
</Layout>
|
||||||
|
<SubComponents>
|
||||||
|
<Component class="javax.swing.JRadioButton" name="timeRadioButton3">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton3.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton3.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JRadioButton" name="timeRadioButton2">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton2.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton2.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JRadioButton" name="timeRadioButton1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton1.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeRadioButton1.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
<Events>
|
||||||
|
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="timeRadioButton1ActionPerformed"/>
|
||||||
|
</Events>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JLabel" name="timeLabel">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
<Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
||||||
|
<ResourceString bundle="org/sleuthkit/autopsy/ingest/Bundle.properties" key="IngestDialogPanel.timeLabel.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
||||||
|
</Property>
|
||||||
|
</Properties>
|
||||||
|
</Component>
|
||||||
|
</SubComponents>
|
||||||
|
</Container>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Form>
|
</Form>
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
*/
|
*/
|
||||||
package org.sleuthkit.autopsy.ingest;
|
package org.sleuthkit.autopsy.ingest;
|
||||||
|
|
||||||
import java.awt.Color;
|
|
||||||
import java.awt.Component;
|
import java.awt.Component;
|
||||||
import org.sleuthkit.autopsy.corecomponents.AdvancedConfigurationDialog;
|
import org.sleuthkit.autopsy.corecomponents.AdvancedConfigurationDialog;
|
||||||
import java.awt.Graphics;
|
import java.awt.Graphics;
|
||||||
@ -41,8 +40,7 @@ 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;
|
||||||
import org.sleuthkit.autopsy.casemodule.IngestConfigurator;
|
import org.sleuthkit.autopsy.casemodule.IngestConfigurator;
|
||||||
import org.sleuthkit.autopsy.ingest.IngestMessage.MessageType;
|
import org.sleuthkit.autopsy.ingest.IngestManager.UpdateFrequency;
|
||||||
import org.sleuthkit.autopsy.ingest.IngestMessagePanel.IngestMessageGroup;
|
|
||||||
import org.sleuthkit.datamodel.Image;
|
import org.sleuthkit.datamodel.Image;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -88,24 +86,32 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
addService(service);
|
addService(service);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//time setting
|
||||||
|
timeGroup.add(timeRadioButton1);
|
||||||
|
timeGroup.add(timeRadioButton2);
|
||||||
|
timeGroup.add(timeRadioButton3);
|
||||||
|
|
||||||
if (manager.isIngestRunning()) {
|
if (manager.isIngestRunning()) {
|
||||||
freqSlider.setEnabled(false);
|
setTimeSettingEnabled(false);
|
||||||
} else {
|
} else {
|
||||||
freqSlider.setEnabled(true);
|
setTimeSettingEnabled(true);
|
||||||
}
|
}
|
||||||
freqSlider.setValue(manager.getUpdateFrequency());
|
|
||||||
|
|
||||||
freqSlider.addChangeListener(new ChangeListener() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void stateChanged(ChangeEvent e) {
|
|
||||||
int val = freqSlider.getValue();
|
|
||||||
if (val < 2) {
|
|
||||||
freqSlider.setValue(2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
|
//set default
|
||||||
|
final UpdateFrequency curFreq = manager.getUpdateFrequency();
|
||||||
|
switch (curFreq) {
|
||||||
|
case FAST:
|
||||||
|
timeRadioButton1.setSelected(true);
|
||||||
|
break;
|
||||||
|
case AVG:
|
||||||
|
timeRadioButton2.setSelected(true);
|
||||||
|
break;
|
||||||
|
case SLOW:
|
||||||
|
timeRadioButton3.setSelected(true);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
servicesTable.setTableHeader(null);
|
servicesTable.setTableHeader(null);
|
||||||
servicesTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
servicesTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
||||||
@ -145,13 +151,20 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setTimeSettingEnabled(boolean enabled) {
|
||||||
|
timeRadioButton1.setEnabled(enabled);
|
||||||
|
timeRadioButton2.setEnabled(enabled);
|
||||||
|
timeRadioButton3.setEnabled(enabled);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void paint(Graphics g) {
|
public void paint(Graphics g) {
|
||||||
super.paint(g);
|
super.paint(g);
|
||||||
if (manager.isIngestRunning()) {
|
if (manager.isIngestRunning()) {
|
||||||
freqSlider.setEnabled(false);
|
setTimeSettingEnabled(false);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
freqSlider.setEnabled(true);
|
setTimeSettingEnabled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -170,8 +183,7 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
||||||
private void initComponents() {
|
private void initComponents() {
|
||||||
|
|
||||||
freqSlider = new javax.swing.JSlider();
|
timeGroup = new javax.swing.ButtonGroup();
|
||||||
freqSliderLabel = new javax.swing.JLabel();
|
|
||||||
servicesScrollPane = new javax.swing.JScrollPane();
|
servicesScrollPane = new javax.swing.JScrollPane();
|
||||||
servicesTable = new javax.swing.JTable();
|
servicesTable = new javax.swing.JTable();
|
||||||
jPanel1 = new javax.swing.JPanel();
|
jPanel1 = new javax.swing.JPanel();
|
||||||
@ -179,21 +191,15 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
jSeparator2 = new javax.swing.JSeparator();
|
jSeparator2 = new javax.swing.JSeparator();
|
||||||
jScrollPane1 = new javax.swing.JScrollPane();
|
jScrollPane1 = new javax.swing.JScrollPane();
|
||||||
simplePanel = new javax.swing.JPanel();
|
simplePanel = new javax.swing.JPanel();
|
||||||
|
timePanel = new javax.swing.JPanel();
|
||||||
|
timeRadioButton3 = new javax.swing.JRadioButton();
|
||||||
|
timeRadioButton2 = new javax.swing.JRadioButton();
|
||||||
|
timeRadioButton1 = new javax.swing.JRadioButton();
|
||||||
|
timeLabel = new javax.swing.JLabel();
|
||||||
|
|
||||||
setPreferredSize(new java.awt.Dimension(522, 257));
|
setPreferredSize(new java.awt.Dimension(522, 257));
|
||||||
|
|
||||||
freqSlider.setMajorTickSpacing(5);
|
servicesScrollPane.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(160, 160, 160)));
|
||||||
freqSlider.setMaximum(30);
|
|
||||||
freqSlider.setMinorTickSpacing(2);
|
|
||||||
freqSlider.setPaintLabels(true);
|
|
||||||
freqSlider.setPaintTicks(true);
|
|
||||||
freqSlider.setSnapToTicks(true);
|
|
||||||
freqSlider.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.freqSlider.toolTipText")); // NOI18N
|
|
||||||
freqSlider.setValue(15);
|
|
||||||
|
|
||||||
freqSliderLabel.setText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.freqSliderLabel.text")); // NOI18N
|
|
||||||
freqSliderLabel.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.freqSliderLabel.toolTipText")); // NOI18N
|
|
||||||
|
|
||||||
servicesScrollPane.setPreferredSize(new java.awt.Dimension(160, 160));
|
servicesScrollPane.setPreferredSize(new java.awt.Dimension(160, 160));
|
||||||
|
|
||||||
servicesTable.setBackground(new java.awt.Color(240, 240, 240));
|
servicesTable.setBackground(new java.awt.Color(240, 240, 240));
|
||||||
@ -240,7 +246,7 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
jPanel1Layout.setVerticalGroup(
|
jPanel1Layout.setVerticalGroup(
|
||||||
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
|
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
|
||||||
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 183, Short.MAX_VALUE)
|
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 232, Short.MAX_VALUE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addGap(0, 0, 0)
|
.addGap(0, 0, 0)
|
||||||
@ -248,20 +254,61 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
.addContainerGap())
|
.addContainerGap())
|
||||||
);
|
);
|
||||||
|
|
||||||
|
timePanel.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(160, 160, 160)));
|
||||||
|
|
||||||
|
timeRadioButton3.setText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton3.text")); // NOI18N
|
||||||
|
timeRadioButton3.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton3.toolTipText")); // NOI18N
|
||||||
|
|
||||||
|
timeRadioButton2.setText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton2.text")); // NOI18N
|
||||||
|
timeRadioButton2.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton2.toolTipText")); // NOI18N
|
||||||
|
|
||||||
|
timeRadioButton1.setText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton1.text")); // NOI18N
|
||||||
|
timeRadioButton1.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeRadioButton1.toolTipText")); // NOI18N
|
||||||
|
timeRadioButton1.addActionListener(new java.awt.event.ActionListener() {
|
||||||
|
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||||
|
timeRadioButton1ActionPerformed(evt);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
timeLabel.setText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeLabel.text")); // NOI18N
|
||||||
|
timeLabel.setToolTipText(org.openide.util.NbBundle.getMessage(IngestDialogPanel.class, "IngestDialogPanel.timeLabel.toolTipText")); // NOI18N
|
||||||
|
|
||||||
|
javax.swing.GroupLayout timePanelLayout = new javax.swing.GroupLayout(timePanel);
|
||||||
|
timePanel.setLayout(timePanelLayout);
|
||||||
|
timePanelLayout.setHorizontalGroup(
|
||||||
|
timePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
|
.addGroup(timePanelLayout.createSequentialGroup()
|
||||||
|
.addContainerGap()
|
||||||
|
.addGroup(timePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
|
.addComponent(timeRadioButton3)
|
||||||
|
.addComponent(timeRadioButton1)
|
||||||
|
.addComponent(timeLabel)
|
||||||
|
.addComponent(timeRadioButton2))
|
||||||
|
.addContainerGap(28, Short.MAX_VALUE))
|
||||||
|
);
|
||||||
|
timePanelLayout.setVerticalGroup(
|
||||||
|
timePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
|
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, timePanelLayout.createSequentialGroup()
|
||||||
|
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||||
|
.addComponent(timeLabel)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(timeRadioButton1)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(timeRadioButton2)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(timeRadioButton3)
|
||||||
|
.addGap(20, 20, 20))
|
||||||
|
);
|
||||||
|
|
||||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
||||||
this.setLayout(layout);
|
this.setLayout(layout);
|
||||||
layout.setHorizontalGroup(
|
layout.setHorizontalGroup(
|
||||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
.addContainerGap()
|
||||||
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addContainerGap()
|
.addComponent(servicesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 195, Short.MAX_VALUE)
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
|
.addComponent(timePanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||||
.addComponent(freqSlider, 0, 0, Short.MAX_VALUE)
|
|
||||||
.addComponent(servicesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
|
|
||||||
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
|
|
||||||
.addGap(37, 37, 37)
|
|
||||||
.addComponent(freqSliderLabel)))
|
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||||
.addContainerGap())
|
.addContainerGap())
|
||||||
@ -271,13 +318,11 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addContainerGap()
|
.addContainerGap()
|
||||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||||
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 235, Short.MAX_VALUE)
|
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 284, Short.MAX_VALUE)
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addComponent(servicesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 170, Short.MAX_VALUE)
|
.addComponent(servicesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 7, Short.MAX_VALUE)
|
||||||
.addComponent(freqSlider, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(timePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
|
||||||
.addGap(0, 0, 0)
|
|
||||||
.addComponent(freqSliderLabel)))
|
|
||||||
.addContainerGap())
|
.addContainerGap())
|
||||||
);
|
);
|
||||||
}// </editor-fold>//GEN-END:initComponents
|
}// </editor-fold>//GEN-END:initComponents
|
||||||
@ -295,16 +340,25 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
});
|
});
|
||||||
dialog.display(currentService.getAdvancedConfiguration());
|
dialog.display(currentService.getAdvancedConfiguration());
|
||||||
}//GEN-LAST:event_advancedButtonActionPerformed
|
}//GEN-LAST:event_advancedButtonActionPerformed
|
||||||
|
|
||||||
|
private void timeRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_timeRadioButton1ActionPerformed
|
||||||
|
// TODO add your handling code here:
|
||||||
|
}//GEN-LAST:event_timeRadioButton1ActionPerformed
|
||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
private javax.swing.JButton advancedButton;
|
private javax.swing.JButton advancedButton;
|
||||||
private javax.swing.JSlider freqSlider;
|
|
||||||
private javax.swing.JLabel freqSliderLabel;
|
|
||||||
private javax.swing.JPanel jPanel1;
|
private javax.swing.JPanel jPanel1;
|
||||||
private javax.swing.JScrollPane jScrollPane1;
|
private javax.swing.JScrollPane jScrollPane1;
|
||||||
private javax.swing.JSeparator jSeparator2;
|
private javax.swing.JSeparator jSeparator2;
|
||||||
private javax.swing.JScrollPane servicesScrollPane;
|
private javax.swing.JScrollPane servicesScrollPane;
|
||||||
private javax.swing.JTable servicesTable;
|
private javax.swing.JTable servicesTable;
|
||||||
private javax.swing.JPanel simplePanel;
|
private javax.swing.JPanel simplePanel;
|
||||||
|
private javax.swing.ButtonGroup timeGroup;
|
||||||
|
private javax.swing.JLabel timeLabel;
|
||||||
|
private javax.swing.JPanel timePanel;
|
||||||
|
private javax.swing.JRadioButton timeRadioButton1;
|
||||||
|
private javax.swing.JRadioButton timeRadioButton2;
|
||||||
|
private javax.swing.JRadioButton timeRadioButton3;
|
||||||
// End of variables declaration//GEN-END:variables
|
// End of variables declaration//GEN-END:variables
|
||||||
|
|
||||||
private class ServicesTableModel extends AbstractTableModel {
|
private class ServicesTableModel extends AbstractTableModel {
|
||||||
@ -359,12 +413,18 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
return servicesToStart;
|
return servicesToStart;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean freqSliderEnabled() {
|
private boolean timeSelectionEnabled() {
|
||||||
return freqSlider.isEnabled();
|
return timeRadioButton1.isEnabled() && timeRadioButton2.isEnabled() && timeRadioButton3.isEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
int sliderValue() {
|
private UpdateFrequency getSelectedTimeValue() {
|
||||||
return freqSlider.getValue();
|
if (timeRadioButton1.isSelected()) {
|
||||||
|
return UpdateFrequency.FAST;
|
||||||
|
} else if (timeRadioButton2.isSelected()) {
|
||||||
|
return UpdateFrequency.AVG;
|
||||||
|
} else {
|
||||||
|
return UpdateFrequency.SLOW;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void reloadSimpleConfiguration() {
|
private void reloadSimpleConfiguration() {
|
||||||
@ -407,8 +467,8 @@ public class IngestDialogPanel extends javax.swing.JPanel implements IngestConfi
|
|||||||
}
|
}
|
||||||
|
|
||||||
//update ingest freq. refresh
|
//update ingest freq. refresh
|
||||||
if (freqSlider.isEnabled()) {
|
if (timeSelectionEnabled()) {
|
||||||
manager.setUpdateFrequency(freqSlider.getValue());
|
manager.setUpdateFrequency(getSelectedTimeValue());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,10 +56,23 @@ import org.sleuthkit.datamodel.TskData;
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class IngestManager {
|
public class IngestManager {
|
||||||
|
enum UpdateFrequency {
|
||||||
|
FAST(20),
|
||||||
|
AVG(10),
|
||||||
|
SLOW(5);
|
||||||
|
|
||||||
|
private final int time;
|
||||||
|
UpdateFrequency(int time) {
|
||||||
|
this.time = time;
|
||||||
|
}
|
||||||
|
int getTime(){ return time;}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
private static final Logger logger = Logger.getLogger(IngestManager.class.getName());
|
private static final Logger logger = Logger.getLogger(IngestManager.class.getName());
|
||||||
private IngestManagerStats stats;
|
private IngestManagerStats stats;
|
||||||
private volatile int updateFrequency = 15; //in minutes
|
|
||||||
|
private volatile UpdateFrequency updateFrequency = UpdateFrequency.AVG;
|
||||||
//queues
|
//queues
|
||||||
private final ImageQueue imageQueue = new ImageQueue(); // list of services and images to analyze
|
private final ImageQueue imageQueue = new ImageQueue(); // list of services and images to analyze
|
||||||
private final FsContentQueue fsContentQueue = new FsContentQueue();
|
private final FsContentQueue fsContentQueue = new FsContentQueue();
|
||||||
@ -394,7 +407,7 @@ public class IngestManager {
|
|||||||
* Services should call this at init() to get current setting
|
* Services should call this at init() to get current setting
|
||||||
* and use the setting to change notification and data refresh intervals
|
* and use the setting to change notification and data refresh intervals
|
||||||
*/
|
*/
|
||||||
int getUpdateFrequency() {
|
UpdateFrequency getUpdateFrequency() {
|
||||||
return updateFrequency;
|
return updateFrequency;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -402,7 +415,7 @@ public class IngestManager {
|
|||||||
* set new minimal update frequency services should use
|
* set new minimal update frequency services should use
|
||||||
* @param frequency to use in minutes
|
* @param frequency to use in minutes
|
||||||
*/
|
*/
|
||||||
void setUpdateFrequency(int frequency) {
|
void setUpdateFrequency(UpdateFrequency frequency) {
|
||||||
this.updateFrequency = frequency;
|
this.updateFrequency = frequency;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public class IngestManagerProxy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getUpdateFrequency() {
|
public int getUpdateFrequency() {
|
||||||
return manager.getUpdateFrequency();
|
return manager.getUpdateFrequency().getTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
public IngestServiceFsContent.ProcessResult getFsContentServiceResult(String serviceName) {
|
public IngestServiceFsContent.ProcessResult getFsContentServiceResult(String serviceName) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user