mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-15 17:27:43 +00:00
rename for codacy
This commit is contained in:
parent
031c3f7d16
commit
9a8b51d51c
@ -35,8 +35,8 @@ DataSourceSummaryDetailsPanel.unallocatedSizeLabel.text=Unallocated Space:
|
|||||||
DataSourceSummaryDetailsPanel.unallocatedSizeValue.text=
|
DataSourceSummaryDetailsPanel.unallocatedSizeValue.text=
|
||||||
DataSourceSummaryCountsPanel.byCategoryLabel.text=Files by Category
|
DataSourceSummaryCountsPanel.byCategoryLabel.text=Files by Category
|
||||||
DataSourceSummaryCountsPanel.resultsByTypeLabel.text=Results by Type
|
DataSourceSummaryCountsPanel.resultsByTypeLabel.text=Results by Type
|
||||||
DataSourceSummaryActivityPanel.programsRunLabel.text=Recent Programs
|
DataSourceUserActivityPanel.programsRunLabel.text=Recent Programs
|
||||||
DataSourceSummaryActivityPanel.recentAccountsLabel.text=Recent Accounts
|
DataSourceUserActivityPanel.recentAccountsLabel.text=Recent Accounts
|
||||||
DataSourceSummaryActivityPanel.topWebSearchLabel.text=Recent Web Searches
|
DataSourceUserActivityPanel.topWebSearchLabel.text=Recent Web Searches
|
||||||
DataSourceSummaryActivityPanel.topDevicesAttachedLabel.text=Recent Devices Attached
|
DataSourceUserActivityPanel.topDevicesAttachedLabel.text=Recent Devices Attached
|
||||||
DataSourceSummaryActivityPanel.recentDomainsLabel.text=Recent Domains
|
DataSourceUserActivityPanel.recentDomainsLabel.text=Recent Domains
|
||||||
|
@ -1,21 +1,21 @@
|
|||||||
CTL_DataSourceSummaryAction=Data Source Summary
|
CTL_DataSourceSummaryAction=Data Source Summary
|
||||||
DataSourceSummaryActivityPanel_noDataExists=No communication data exists
|
DataSourceUserActivityPanel_noDataExists=No communication data exists
|
||||||
DataSourceSummaryActivityPanel_tab_title=User Activity
|
DataSourceUserActivityPanel_tab_title=User Activity
|
||||||
DataSourceSummaryActivityPanel_TopAccountTableModel_accountType_header=Account Type
|
DataSourceUserActivityPanel_TopAccountTableModel_accountType_header=Account Type
|
||||||
DataSourceSummaryActivityPanel_TopAccountTableModel_lastAccess_header=Last Accessed
|
DataSourceUserActivityPanel_TopAccountTableModel_lastAccess_header=Last Accessed
|
||||||
DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_dateAccessed_header=Last Accessed
|
DataSourceUserActivityPanel_TopDeviceAttachedTableModel_dateAccessed_header=Last Accessed
|
||||||
DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_deviceId_header=Device Id
|
DataSourceUserActivityPanel_TopDeviceAttachedTableModel_deviceId_header=Device Id
|
||||||
DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_makeModel_header=Make and Model
|
DataSourceUserActivityPanel_TopDeviceAttachedTableModel_makeModel_header=Make and Model
|
||||||
DataSourceSummaryActivityPanel_TopDomainsTableModel_domain_header=Domain
|
DataSourceUserActivityPanel_TopDomainsTableModel_domain_header=Domain
|
||||||
DataSourceSummaryActivityPanel_TopDomainsTableModel_lastAccess_header=Last Access
|
DataSourceUserActivityPanel_TopDomainsTableModel_lastAccess_header=Last Access
|
||||||
DataSourceSummaryActivityPanel_TopDomainsTableModel_url_header=URL
|
DataSourceUserActivityPanel_TopDomainsTableModel_url_header=URL
|
||||||
DataSourceSummaryActivityPanel_TopProgramsTableModel_count_header=Run Times
|
DataSourceUserActivityPanel_TopProgramsTableModel_count_header=Run Times
|
||||||
DataSourceSummaryActivityPanel_TopProgramsTableModel_folder_header=Folder
|
DataSourceUserActivityPanel_TopProgramsTableModel_folder_header=Folder
|
||||||
DataSourceSummaryActivityPanel_TopProgramsTableModel_lastrun_header=Last Run
|
DataSourceUserActivityPanel_TopProgramsTableModel_lastrun_header=Last Run
|
||||||
DataSourceSummaryActivityPanel_TopProgramsTableModel_name_header=Program
|
DataSourceUserActivityPanel_TopProgramsTableModel_name_header=Program
|
||||||
DataSourceSummaryActivityPanel_TopWebSearchTableModel_dateAccessed_header=Date Accessed
|
DataSourceUserActivityPanel_TopWebSearchTableModel_dateAccessed_header=Date Accessed
|
||||||
DataSourceSummaryActivityPanel_TopWebSearchTableModel_searchString_header=Search String
|
DataSourceUserActivityPanel_TopWebSearchTableModel_searchString_header=Search String
|
||||||
DataSourceSummaryActivityPanel_TopWebSearchTableModel_translatedResult_header=Translated
|
DataSourceUserActivityPanel_TopWebSearchTableModel_translatedResult_header=Translated
|
||||||
DataSourceSummaryCountsPanel.ArtifactCountsTableModel.count.header=Count
|
DataSourceSummaryCountsPanel.ArtifactCountsTableModel.count.header=Count
|
||||||
DataSourceSummaryCountsPanel.ArtifactCountsTableModel.type.header=Result Type
|
DataSourceSummaryCountsPanel.ArtifactCountsTableModel.type.header=Result Type
|
||||||
DataSourceSummaryCountsPanel.byMimeTypeLabel.text=Files by MIME Type
|
DataSourceSummaryCountsPanel.byMimeTypeLabel.text=Files by MIME Type
|
||||||
@ -78,11 +78,11 @@ DataSourceSummaryDetailsPanel.unallocatedSizeLabel.text=Unallocated Space:
|
|||||||
DataSourceSummaryDetailsPanel.unallocatedSizeValue.text=
|
DataSourceSummaryDetailsPanel.unallocatedSizeValue.text=
|
||||||
DataSourceSummaryCountsPanel.byCategoryLabel.text=Files by Category
|
DataSourceSummaryCountsPanel.byCategoryLabel.text=Files by Category
|
||||||
DataSourceSummaryCountsPanel.resultsByTypeLabel.text=Results by Type
|
DataSourceSummaryCountsPanel.resultsByTypeLabel.text=Results by Type
|
||||||
DataSourceSummaryActivityPanel.programsRunLabel.text=Recent Programs
|
DataSourceUserActivityPanel.programsRunLabel.text=Recent Programs
|
||||||
DataSourceSummaryActivityPanel.recentAccountsLabel.text=Recent Accounts
|
DataSourceUserActivityPanel.recentAccountsLabel.text=Recent Accounts
|
||||||
DataSourceSummaryActivityPanel.topWebSearchLabel.text=Recent Web Searches
|
DataSourceUserActivityPanel.topWebSearchLabel.text=Recent Web Searches
|
||||||
DataSourceSummaryActivityPanel.topDevicesAttachedLabel.text=Recent Devices Attached
|
DataSourceUserActivityPanel.topDevicesAttachedLabel.text=Recent Devices Attached
|
||||||
DataSourceSummaryActivityPanel.recentDomainsLabel.text=Recent Domains
|
DataSourceUserActivityPanel.recentDomainsLabel.text=Recent Domains
|
||||||
DataSourceSummaryDialog.window.title=Data Sources Summary
|
DataSourceSummaryDialog.window.title=Data Sources Summary
|
||||||
DataSourceSummaryNode.column.dataSourceName.header=Data Source Name
|
DataSourceSummaryNode.column.dataSourceName.header=Data Source Name
|
||||||
DataSourceSummaryNode.column.files.header=Files
|
DataSourceSummaryNode.column.files.header=Files
|
||||||
|
@ -1,398 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
|
||||||
|
|
||||||
<Form version="1.5" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="1"/>
|
|
||||||
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
|
|
||||||
<AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
|
|
||||||
<AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
|
|
||||||
<AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
|
|
||||||
<AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,3,-35,0,0,2,-42"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout"/>
|
|
||||||
<SubComponents>
|
|
||||||
<Container class="javax.swing.JScrollPane" name="contentScrollPane">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="null"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="null"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
<Constraints>
|
|
||||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
|
||||||
<BorderConstraints direction="Center"/>
|
|
||||||
</Constraint>
|
|
||||||
</Constraints>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
|
|
||||||
<SubComponents>
|
|
||||||
<Container class="javax.swing.JPanel" name="contentPanel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
|
|
||||||
<Border info="org.netbeans.modules.form.compat2.border.EmptyBorderInfo">
|
|
||||||
<EmptyBorder bottom="10" left="10" right="10" top="10"/>
|
|
||||||
</Border>
|
|
||||||
</Property>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[720, 450]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[720, 450]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignBoxLayout">
|
|
||||||
<Property name="axis" type="int" value="3"/>
|
|
||||||
</Layout>
|
|
||||||
<SubComponents>
|
|
||||||
<Component class="javax.swing.JLabel" name="programsRunLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="horizontalAlignment" type="int" value="2"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/datasourcesummary/ui/Bundle.properties" key="DataSourceSummaryActivityPanel.programsRunLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="alignmentX" type="float" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
|
|
||||||
<Connection code="Component.LEFT_ALIGNMENT" type="code"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler1">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="topProgramsTablePanel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="alignmentX" type="float" value="0.0"/>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="topProgramsTable"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
|
||||||
</Container>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler3">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="recentDomainsLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="horizontalAlignment" type="int" value="2"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/datasourcesummary/ui/Bundle.properties" key="DataSourceSummaryActivityPanel.recentDomainsLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler2">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="recentDomainsTablePanel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="alignmentX" type="float" value="0.0"/>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="recentDomainsTable"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
|
||||||
</Container>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler4">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="topWebSearchLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="horizontalAlignment" type="int" value="2"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/datasourcesummary/ui/Bundle.properties" key="DataSourceSummaryActivityPanel.topWebSearchLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler5">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="topWebSearches">
|
|
||||||
<Properties>
|
|
||||||
<Property name="alignmentX" type="float" value="0.0"/>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="topWebSearchesTable"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
|
||||||
</Container>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler6">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="topDevicesAttachedLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="horizontalAlignment" type="int" value="2"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/datasourcesummary/ui/Bundle.properties" key="DataSourceSummaryActivityPanel.topDevicesAttachedLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler7">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="recentDevicesAttached">
|
|
||||||
<Properties>
|
|
||||||
<Property name="alignmentX" type="float" value="0.0"/>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="topDevicesAttachedTable"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
|
||||||
</Container>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler8">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 20]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.JLabel" name="recentAccountsLabel">
|
|
||||||
<Properties>
|
|
||||||
<Property name="horizontalAlignment" type="int" value="2"/>
|
|
||||||
<Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
|
|
||||||
<ResourceString bundle="org/sleuthkit/autopsy/datasourcesummary/ui/Bundle.properties" key="DataSourceSummaryActivityPanel.recentAccountsLabel.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, "{key}")"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Component class="javax.swing.Box$Filler" name="filler9">
|
|
||||||
<Properties>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[0, 2]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
<AuxValue name="classDetails" type="java.lang.String" value="Box.Filler.RigidArea"/>
|
|
||||||
</AuxValues>
|
|
||||||
</Component>
|
|
||||||
<Container class="javax.swing.JPanel" name="topAccounts">
|
|
||||||
<Properties>
|
|
||||||
<Property name="alignmentX" type="float" value="0.0"/>
|
|
||||||
<Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
<Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
|
|
||||||
<Dimension value="[700, 106]"/>
|
|
||||||
</Property>
|
|
||||||
</Properties>
|
|
||||||
<AuxValues>
|
|
||||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="topAccountsTable"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableLocal" type="java.lang.Boolean" value="true"/>
|
|
||||||
<AuxValue name="JavaCodeGenerator_VariableModifier" type="java.lang.Integer" value="0"/>
|
|
||||||
</AuxValues>
|
|
||||||
|
|
||||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignFlowLayout"/>
|
|
||||||
</Container>
|
|
||||||
</SubComponents>
|
|
||||||
</Container>
|
|
||||||
</SubComponents>
|
|
||||||
</Container>
|
|
||||||
</SubComponents>
|
|
||||||
</Form>
|
|
@ -1,400 +0,0 @@
|
|||||||
/*
|
|
||||||
* Autopsy Forensic Browser
|
|
||||||
*
|
|
||||||
* Copyright 2020 Basis Technology Corp.
|
|
||||||
* Contact: carrier <at> sleuthkit <dot> 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.datasourcesummary.ui;
|
|
||||||
|
|
||||||
import java.awt.Component;
|
|
||||||
import java.text.DateFormat;
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Locale;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
import org.apache.commons.lang.StringUtils;
|
|
||||||
import org.openide.util.NbBundle.Messages;
|
|
||||||
import org.sleuthkit.autopsy.casemodule.Case;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.DataSourceUserActivitySummary;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.DataSourceTopProgramsSummary;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.DataSourceUserActivitySummary.TopAccountResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.DataSourceUserActivitySummary.TopDeviceAttachedResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.DataSourceUserActivitySummary.TopWebSearchResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.TopDomainsResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.datamodel.TopProgramsResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.CellModelTableCellRenderer.DefaultCellModel;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.DataFetchWorker;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.DataFetchWorker.DataFetchComponents;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.DataFetchResult;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.JTablePanel;
|
|
||||||
import org.sleuthkit.autopsy.datasourcesummary.uiutils.JTablePanel.ColumnModel;
|
|
||||||
import org.sleuthkit.datamodel.DataSource;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A panel to display user activity.
|
|
||||||
*/
|
|
||||||
@Messages({
|
|
||||||
"DataSourceSummaryActivityPanel_tab_title=User Activity",
|
|
||||||
"DataSourceSummaryActivityPanel_TopProgramsTableModel_name_header=Program",
|
|
||||||
"DataSourceSummaryActivityPanel_TopProgramsTableModel_folder_header=Folder",
|
|
||||||
"DataSourceSummaryActivityPanel_TopProgramsTableModel_count_header=Run Times",
|
|
||||||
"DataSourceSummaryActivityPanel_TopProgramsTableModel_lastrun_header=Last Run",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDomainsTableModel_domain_header=Domain",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDomainsTableModel_url_header=URL",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDomainsTableModel_lastAccess_header=Last Access",
|
|
||||||
"DataSourceSummaryActivityPanel_noDataExists=No communication data exists",
|
|
||||||
"DataSourceSummaryActivityPanel_TopWebSearchTableModel_searchString_header=Search String",
|
|
||||||
"DataSourceSummaryActivityPanel_TopWebSearchTableModel_dateAccessed_header=Date Accessed",
|
|
||||||
"DataSourceSummaryActivityPanel_TopWebSearchTableModel_translatedResult_header=Translated",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_deviceId_header=Device Id",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_makeModel_header=Make and Model",
|
|
||||||
"DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_dateAccessed_header=Last Accessed",
|
|
||||||
"DataSourceSummaryActivityPanel_TopAccountTableModel_accountType_header=Account Type",
|
|
||||||
"DataSourceSummaryActivityPanel_TopAccountTableModel_lastAccess_header=Last Accessed",})
|
|
||||||
public class DataSourceSummaryActivityPanel extends BaseDataSourceSummaryPanel {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
|
||||||
private static final DateFormat DATETIME_FORMAT = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss", Locale.getDefault());
|
|
||||||
private static final int TOP_PROGS_COUNT = 10;
|
|
||||||
private static final int TOP_DOMAINS_COUNT = 10;
|
|
||||||
private static final int TOP_SEARCHES_COUNT = 10;
|
|
||||||
private static final int TOP_ACCOUNTS_COUNT = 5;
|
|
||||||
private static final int TOP_DEVICES_COUNT = 10;
|
|
||||||
|
|
||||||
private static String getFormatted(Date date) {
|
|
||||||
return date == null ? "" : DATETIME_FORMAT.format(date);
|
|
||||||
}
|
|
||||||
|
|
||||||
private final JTablePanel<TopProgramsResult> topProgramsTable;
|
|
||||||
private final JTablePanel<TopDomainsResult> recentDomainsTable;
|
|
||||||
private final JTablePanel<TopWebSearchResult> topWebSearchesTable;
|
|
||||||
private final JTablePanel<TopDeviceAttachedResult> topDevicesAttachedTable;
|
|
||||||
private final JTablePanel<TopAccountResult> topAccountsTable;
|
|
||||||
|
|
||||||
private final List<DataFetchComponents<DataSource, ?>> dataFetchComponents;
|
|
||||||
private final List<JTablePanel<?>> tables;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a new DataSourceUserActivityPanel.
|
|
||||||
*/
|
|
||||||
public DataSourceSummaryActivityPanel() {
|
|
||||||
this(new DataSourceTopProgramsSummary(), new DataSourceUserActivitySummary());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a new DataSourceSummaryActivityPanel.
|
|
||||||
*
|
|
||||||
* @param topProgramsData Class from which to obtain top programs data.
|
|
||||||
* @param topDomainsData Class from which to obtain recent domains data.
|
|
||||||
*/
|
|
||||||
public DataSourceSummaryActivityPanel(
|
|
||||||
DataSourceTopProgramsSummary topProgramsData,
|
|
||||||
DataSourceUserActivitySummary topDomainsData) {
|
|
||||||
|
|
||||||
// set up recent programs table
|
|
||||||
this.topProgramsTable = JTablePanel.getJTablePanel(Arrays.asList(
|
|
||||||
// program name column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopProgramsTableModel_name_header(),
|
|
||||||
(prog) -> {
|
|
||||||
return new DefaultCellModel(prog.getProgramName())
|
|
||||||
.setTooltip(prog.getProgramPath());
|
|
||||||
},
|
|
||||||
250),
|
|
||||||
// program folder column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopProgramsTableModel_folder_header(),
|
|
||||||
(prog) -> {
|
|
||||||
return new DefaultCellModel(
|
|
||||||
topProgramsData.getShortFolderName(
|
|
||||||
prog.getProgramPath(),
|
|
||||||
prog.getProgramName()));
|
|
||||||
},
|
|
||||||
150),
|
|
||||||
// run count column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopProgramsTableModel_count_header(),
|
|
||||||
(prog) -> {
|
|
||||||
String runTimes = prog.getRunTimes() == null ? "" : Long.toString(prog.getRunTimes());
|
|
||||||
return new DefaultCellModel(runTimes);
|
|
||||||
},
|
|
||||||
80),
|
|
||||||
// last run date column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopProgramsTableModel_lastrun_header(),
|
|
||||||
(prog) -> new DefaultCellModel(getFormatted(prog.getLastRun())),
|
|
||||||
150)
|
|
||||||
));
|
|
||||||
|
|
||||||
// set up recent domains table
|
|
||||||
this.recentDomainsTable = JTablePanel.getJTablePanel(Arrays.asList(
|
|
||||||
// domain column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDomainsTableModel_domain_header(),
|
|
||||||
(recentDomain) -> new DefaultCellModel(recentDomain.getDomain()),
|
|
||||||
250),
|
|
||||||
// url column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDomainsTableModel_url_header(),
|
|
||||||
(recentDomain) -> new DefaultCellModel(recentDomain.getUrl()),
|
|
||||||
250),
|
|
||||||
// last accessed column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDomainsTableModel_lastAccess_header(),
|
|
||||||
(recentDomain) -> new DefaultCellModel(getFormatted(recentDomain.getLastVisit())),
|
|
||||||
150)
|
|
||||||
));
|
|
||||||
|
|
||||||
// top web searches table
|
|
||||||
this.topWebSearchesTable = JTablePanel.getJTablePanel(Arrays.asList(
|
|
||||||
// search string column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopWebSearchTableModel_searchString_header(),
|
|
||||||
(webSearch) -> new DefaultCellModel(webSearch.getSearchString()),
|
|
||||||
250
|
|
||||||
),
|
|
||||||
// last accessed
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopWebSearchTableModel_dateAccessed_header(),
|
|
||||||
(webSearch) -> new DefaultCellModel(getFormatted(webSearch.getDateAccessed())),
|
|
||||||
150
|
|
||||||
),
|
|
||||||
// translated value
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopWebSearchTableModel_translatedResult_header(),
|
|
||||||
(webSearch) -> new DefaultCellModel(webSearch.getTranslatedResult()),
|
|
||||||
250
|
|
||||||
)
|
|
||||||
));
|
|
||||||
|
|
||||||
// top devices attached table
|
|
||||||
this.topDevicesAttachedTable = JTablePanel.getJTablePanel(Arrays.asList(
|
|
||||||
// device id column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_deviceId_header(),
|
|
||||||
(device) -> new DefaultCellModel(device.getDeviceId()),
|
|
||||||
250
|
|
||||||
),
|
|
||||||
// last accessed
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_dateAccessed_header(),
|
|
||||||
(device) -> new DefaultCellModel(getFormatted(device.getDateAccessed())),
|
|
||||||
150
|
|
||||||
),
|
|
||||||
// make and model
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopDeviceAttachedTableModel_makeModel_header(),
|
|
||||||
(device) -> {
|
|
||||||
String make = StringUtils.isBlank(device.getDeviceMake()) ? "" : device.getDeviceMake().trim();
|
|
||||||
String model = StringUtils.isBlank(device.getDeviceModel()) ? "" : device.getDeviceModel().trim();
|
|
||||||
String makeModelString = (make.isEmpty() || model.isEmpty())
|
|
||||||
? make + model
|
|
||||||
: String.format("%s - %s", make, model);
|
|
||||||
return new DefaultCellModel(makeModelString);
|
|
||||||
},
|
|
||||||
250
|
|
||||||
)
|
|
||||||
));
|
|
||||||
|
|
||||||
// top accounts table
|
|
||||||
this.topAccountsTable = JTablePanel.getJTablePanel(Arrays.asList(
|
|
||||||
// account type column
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopAccountTableModel_accountType_header(),
|
|
||||||
(account) -> new DefaultCellModel(account.getAccountType()),
|
|
||||||
250
|
|
||||||
),
|
|
||||||
// last accessed
|
|
||||||
new ColumnModel<>(
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_TopAccountTableModel_lastAccess_header(),
|
|
||||||
(account) -> new DefaultCellModel(getFormatted(account.getLastAccess())),
|
|
||||||
150
|
|
||||||
)
|
|
||||||
));
|
|
||||||
|
|
||||||
this.tables = Arrays.asList(
|
|
||||||
topProgramsTable,
|
|
||||||
recentDomainsTable,
|
|
||||||
topWebSearchesTable,
|
|
||||||
topDevicesAttachedTable,
|
|
||||||
topAccountsTable
|
|
||||||
);
|
|
||||||
|
|
||||||
// set up data acquisition methods
|
|
||||||
dataFetchComponents = Arrays.asList(
|
|
||||||
// top programs query
|
|
||||||
new DataFetchComponents<>(
|
|
||||||
(dataSource) -> topProgramsData.getTopPrograms(dataSource, TOP_PROGS_COUNT),
|
|
||||||
(result) -> topProgramsTable.showDataFetchResult(result, JTablePanel.getDefaultErrorMessage(),
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_noDataExists())),
|
|
||||||
// top domains query
|
|
||||||
new DataFetchComponents<>(
|
|
||||||
(dataSource) -> topDomainsData.getRecentDomains(dataSource, TOP_DOMAINS_COUNT),
|
|
||||||
(result) -> recentDomainsTable.showDataFetchResult(result, JTablePanel.getDefaultErrorMessage(),
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_noDataExists())),
|
|
||||||
// top web searches query
|
|
||||||
new DataFetchComponents<>(
|
|
||||||
(dataSource) -> topDomainsData.getMostRecentWebSearches(dataSource, TOP_SEARCHES_COUNT),
|
|
||||||
(result) -> topWebSearchesTable.showDataFetchResult(result, JTablePanel.getDefaultErrorMessage(),
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_noDataExists())),
|
|
||||||
// top devices query
|
|
||||||
new DataFetchComponents<>(
|
|
||||||
(dataSource) -> topDomainsData.getRecentDevices(dataSource, TOP_DEVICES_COUNT),
|
|
||||||
(result) -> topDevicesAttachedTable.showDataFetchResult(result, JTablePanel.getDefaultErrorMessage(),
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_noDataExists())),
|
|
||||||
// top accounts query
|
|
||||||
new DataFetchComponents<>(
|
|
||||||
(dataSource) -> topDomainsData.getRecentAccounts(dataSource, TOP_ACCOUNTS_COUNT),
|
|
||||||
(result) -> topAccountsTable.showDataFetchResult(result, JTablePanel.getDefaultErrorMessage(),
|
|
||||||
Bundle.DataSourceSummaryActivityPanel_noDataExists()))
|
|
||||||
);
|
|
||||||
|
|
||||||
initComponents();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onNewDataSource(DataSource dataSource) {
|
|
||||||
// if no data source is present or the case is not open,
|
|
||||||
// set results for tables to null.
|
|
||||||
if (dataSource == null || !Case.isCaseOpen()) {
|
|
||||||
this.dataFetchComponents.forEach((item) -> item.getResultHandler()
|
|
||||||
.accept(DataFetchResult.getSuccessResult(null)));
|
|
||||||
|
|
||||||
} else {
|
|
||||||
// set tables to display loading screen
|
|
||||||
this.tables.forEach((table) -> table.showDefaultLoadingMessage());
|
|
||||||
|
|
||||||
// create swing workers to run for each table
|
|
||||||
List<DataFetchWorker<?, ?>> workers = dataFetchComponents
|
|
||||||
.stream()
|
|
||||||
.map((components) -> new DataFetchWorker<>(components, dataSource))
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
|
|
||||||
// submit swing workers to run
|
|
||||||
submit(workers);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This method is called from within the constructor to initialize the form.
|
|
||||||
* WARNING: Do NOT modify this code. The content of this method is always
|
|
||||||
* regenerated by the Form Editor.
|
|
||||||
*/
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
|
||||||
private void initComponents() {
|
|
||||||
|
|
||||||
javax.swing.JScrollPane contentScrollPane = new javax.swing.JScrollPane();
|
|
||||||
javax.swing.JPanel contentPanel = new javax.swing.JPanel();
|
|
||||||
javax.swing.JLabel programsRunLabel = new javax.swing.JLabel();
|
|
||||||
javax.swing.Box.Filler filler1 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2));
|
|
||||||
javax.swing.JPanel topProgramsTablePanel = topProgramsTable;
|
|
||||||
javax.swing.Box.Filler filler3 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20));
|
|
||||||
javax.swing.JLabel recentDomainsLabel = new javax.swing.JLabel();
|
|
||||||
javax.swing.Box.Filler filler2 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2));
|
|
||||||
javax.swing.JPanel recentDomainsTablePanel = recentDomainsTable;
|
|
||||||
javax.swing.Box.Filler filler4 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20));
|
|
||||||
javax.swing.JLabel topWebSearchLabel = new javax.swing.JLabel();
|
|
||||||
javax.swing.Box.Filler filler5 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2));
|
|
||||||
javax.swing.JPanel topWebSearches = topWebSearchesTable;
|
|
||||||
javax.swing.Box.Filler filler6 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20));
|
|
||||||
javax.swing.JLabel topDevicesAttachedLabel = new javax.swing.JLabel();
|
|
||||||
javax.swing.Box.Filler filler7 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2));
|
|
||||||
javax.swing.JPanel recentDevicesAttached = topDevicesAttachedTable;
|
|
||||||
javax.swing.Box.Filler filler8 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20), new java.awt.Dimension(0, 20));
|
|
||||||
javax.swing.JLabel recentAccountsLabel = new javax.swing.JLabel();
|
|
||||||
javax.swing.Box.Filler filler9 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2), new java.awt.Dimension(0, 2));
|
|
||||||
javax.swing.JPanel topAccounts = topAccountsTable;
|
|
||||||
|
|
||||||
setLayout(new java.awt.BorderLayout());
|
|
||||||
|
|
||||||
contentScrollPane.setMaximumSize(null);
|
|
||||||
contentScrollPane.setMinimumSize(null);
|
|
||||||
|
|
||||||
contentPanel.setBorder(javax.swing.BorderFactory.createEmptyBorder(10, 10, 10, 10));
|
|
||||||
contentPanel.setMaximumSize(new java.awt.Dimension(720, 450));
|
|
||||||
contentPanel.setMinimumSize(new java.awt.Dimension(720, 450));
|
|
||||||
contentPanel.setLayout(new javax.swing.BoxLayout(contentPanel, javax.swing.BoxLayout.PAGE_AXIS));
|
|
||||||
|
|
||||||
programsRunLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(programsRunLabel, org.openide.util.NbBundle.getMessage(DataSourceSummaryActivityPanel.class, "DataSourceSummaryActivityPanel.programsRunLabel.text")); // NOI18N
|
|
||||||
programsRunLabel.setAlignmentX(Component.LEFT_ALIGNMENT);
|
|
||||||
contentPanel.add(programsRunLabel);
|
|
||||||
contentPanel.add(filler1);
|
|
||||||
|
|
||||||
topProgramsTablePanel.setAlignmentX(0.0F);
|
|
||||||
topProgramsTablePanel.setMaximumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topProgramsTablePanel.setMinimumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topProgramsTablePanel.setPreferredSize(new java.awt.Dimension(700, 106));
|
|
||||||
contentPanel.add(topProgramsTablePanel);
|
|
||||||
contentPanel.add(filler3);
|
|
||||||
|
|
||||||
recentDomainsLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(recentDomainsLabel, org.openide.util.NbBundle.getMessage(DataSourceSummaryActivityPanel.class, "DataSourceSummaryActivityPanel.recentDomainsLabel.text")); // NOI18N
|
|
||||||
contentPanel.add(recentDomainsLabel);
|
|
||||||
contentPanel.add(filler2);
|
|
||||||
|
|
||||||
recentDomainsTablePanel.setAlignmentX(0.0F);
|
|
||||||
recentDomainsTablePanel.setMaximumSize(new java.awt.Dimension(700, 106));
|
|
||||||
recentDomainsTablePanel.setMinimumSize(new java.awt.Dimension(700, 106));
|
|
||||||
recentDomainsTablePanel.setPreferredSize(new java.awt.Dimension(700, 106));
|
|
||||||
contentPanel.add(recentDomainsTablePanel);
|
|
||||||
contentPanel.add(filler4);
|
|
||||||
|
|
||||||
topWebSearchLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(topWebSearchLabel, org.openide.util.NbBundle.getMessage(DataSourceSummaryActivityPanel.class, "DataSourceSummaryActivityPanel.topWebSearchLabel.text")); // NOI18N
|
|
||||||
contentPanel.add(topWebSearchLabel);
|
|
||||||
contentPanel.add(filler5);
|
|
||||||
|
|
||||||
topWebSearches.setAlignmentX(0.0F);
|
|
||||||
topWebSearches.setMaximumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topWebSearches.setMinimumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topWebSearches.setPreferredSize(new java.awt.Dimension(700, 106));
|
|
||||||
contentPanel.add(topWebSearches);
|
|
||||||
contentPanel.add(filler6);
|
|
||||||
|
|
||||||
topDevicesAttachedLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(topDevicesAttachedLabel, org.openide.util.NbBundle.getMessage(DataSourceSummaryActivityPanel.class, "DataSourceSummaryActivityPanel.topDevicesAttachedLabel.text")); // NOI18N
|
|
||||||
contentPanel.add(topDevicesAttachedLabel);
|
|
||||||
contentPanel.add(filler7);
|
|
||||||
|
|
||||||
recentDevicesAttached.setAlignmentX(0.0F);
|
|
||||||
recentDevicesAttached.setMaximumSize(new java.awt.Dimension(700, 106));
|
|
||||||
recentDevicesAttached.setMinimumSize(new java.awt.Dimension(700, 106));
|
|
||||||
recentDevicesAttached.setPreferredSize(new java.awt.Dimension(700, 106));
|
|
||||||
contentPanel.add(recentDevicesAttached);
|
|
||||||
contentPanel.add(filler8);
|
|
||||||
|
|
||||||
recentAccountsLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
|
|
||||||
org.openide.awt.Mnemonics.setLocalizedText(recentAccountsLabel, org.openide.util.NbBundle.getMessage(DataSourceSummaryActivityPanel.class, "DataSourceSummaryActivityPanel.recentAccountsLabel.text")); // NOI18N
|
|
||||||
contentPanel.add(recentAccountsLabel);
|
|
||||||
contentPanel.add(filler9);
|
|
||||||
|
|
||||||
topAccounts.setAlignmentX(0.0F);
|
|
||||||
topAccounts.setMaximumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topAccounts.setMinimumSize(new java.awt.Dimension(700, 106));
|
|
||||||
topAccounts.setPreferredSize(new java.awt.Dimension(700, 106));
|
|
||||||
contentPanel.add(topAccounts);
|
|
||||||
|
|
||||||
contentScrollPane.setViewportView(contentPanel);
|
|
||||||
|
|
||||||
add(contentScrollPane, java.awt.BorderLayout.CENTER);
|
|
||||||
}// </editor-fold>//GEN-END:initComponents
|
|
||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
|
||||||
// End of variables declaration//GEN-END:variables
|
|
||||||
}
|
|
@ -45,7 +45,7 @@ public class DataSourceSummaryTabbedPane extends JTabbedPane {
|
|||||||
private final List<Pair<String, BaseDataSourceSummaryPanel>> tabs = Arrays.asList(
|
private final List<Pair<String, BaseDataSourceSummaryPanel>> tabs = Arrays.asList(
|
||||||
Pair.of(Bundle.DataSourceSummaryTabbedPane_detailsTab_title(), new DataSourceSummaryDetailsPanel()),
|
Pair.of(Bundle.DataSourceSummaryTabbedPane_detailsTab_title(), new DataSourceSummaryDetailsPanel()),
|
||||||
Pair.of(Bundle.DataSourceSummaryTabbedPane_countsTab_title(), new DataSourceSummaryCountsPanel()),
|
Pair.of(Bundle.DataSourceSummaryTabbedPane_countsTab_title(), new DataSourceSummaryCountsPanel()),
|
||||||
Pair.of(Bundle.DataSourceSummaryTabbedPane_userActivityTab_title(), new DataSourceSummaryActivityPanel())
|
Pair.of(Bundle.DataSourceSummaryTabbedPane_userActivityTab_title(), new DataSourceUserActivityPanel())
|
||||||
);
|
);
|
||||||
|
|
||||||
private final IngestJobInfoPanel ingestHistoryPanel = new IngestJobInfoPanel();
|
private final IngestJobInfoPanel ingestHistoryPanel = new IngestJobInfoPanel();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user