Autopsy  4.18.0
Graphical digital forensics platform for The Sleuth Kit and other tools.
Classes | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer Class Reference

Inherits JPanel, and org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Classes

class  SelectedArtifactChangedTask
 
class  SelectedNodeChangedTask
 
class  ViewUpdate
 

Public Member Functions

 DataArtifactContentViewer ()
 
DataContentViewer createInstance ()
 
Component getComponent ()
 
default String getTitle (Node node)
 
String getTitle ()
 
String getToolTip ()
 
int isPreferred (Node node)
 
boolean isSupported (Node node)
 
void resetComponent ()
 
void setNode (Node selectedNode)
 

Private Member Functions

List< DataArtifact > getArtifactContents ()
 
ArtifactContentViewer getSupportingViewer (DataArtifact artifact)
 
void initComponents ()
 
void nextPageButtonActionPerformed (java.awt.event.ActionEvent evt)
 
void prevPageButtonActionPerformed (java.awt.event.ActionEvent evt)
 
void resetComponents ()
 
void setArtifactContents (List< DataArtifact > artifactList)
 
synchronized void startNewTask (SwingWorker< ViewUpdate, Void > task)
 
void updateView (ViewUpdate viewUpdate)
 

Static Private Member Functions

static boolean isSourceContent (Content content)
 

Private Attributes

javax.swing.JPanel artifactContentPanel
 
javax.swing.JLabel artifactLabel
 
List< DataArtifact > artifactTableContents
 
Node currentNode
 
int currentPage = 1
 
javax.swing.JLabel currentPageLabel
 
SwingWorker< ViewUpdate, Void > currentTask
 
javax.swing.Box.Filler filler1
 
final Collection< ArtifactContentViewerknowArtifactViewers = new HashSet<>(Lookup.getDefault().lookupAll(ArtifactContentViewer.class))
 
final Object lock = new Object()
 
javax.swing.JPanel menuBar
 
javax.swing.JButton nextPageButton
 
javax.swing.JLabel ofLabel
 
javax.swing.JLabel pageLabel
 
javax.swing.JLabel pageLabel2
 
javax.swing.JButton prevPageButton
 
javax.swing.JScrollPane scrollPane
 
javax.swing.JLabel totalPageLabel
 

Static Private Attributes

static final String ERROR_TEXT = NbBundle.getMessage(DataArtifactContentViewer.class, "DataArtifactContentViewer.errorText")
 
static final int LESS_PREFERRED = 3
 
static final Logger logger = Logger.getLogger(DataArtifactContentViewer.class.getName())
 
static final int MORE_PREFERRED = 6
 
static final long serialVersionUID = 1L
 
static final String WAIT_TEXT = NbBundle.getMessage(DataArtifactContentViewer.class, "DataArtifactContentViewer.waitText")
 

Detailed Description

Instances of this class display the DataArtifact associated with the Content represented by a Node.

It goes through a list of known ArtifactContentViewer to find a viewer that supports a given artifact and then hands it the artifact to display.

Definition at line 58 of file DataArtifactContentViewer.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.DataArtifactContentViewer ( )

Definition at line 83 of file DataArtifactContentViewer.java.

Member Function Documentation

DataContentViewer org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.createInstance ( )

Create and return a new instance of your viewer. The reason that this is needed is because the specific viewer modules will be found via NetBeans Lookup and the type will only be DataContentViewer. This method is used to get an instance of your specific type.

Returns
A new instance of the viewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 327 of file DataArtifactContentViewer.java.

List<DataArtifact> org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.getArtifactContents ( )
private

Retrieve the cache of artifact represented as ResultsTableArtifacts.

Returns
A list of artifacts.

Definition at line 506 of file DataArtifactContentViewer.java.

Component org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.getComponent ( )

Return the Swing Component to display. Implementations of this method that extend JPanel and do a 'return this;'. Otherwise return an internal instance of the JPanel.

Returns
the component which is displayed for this viewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 332 of file DataArtifactContentViewer.java.

ArtifactContentViewer org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.getSupportingViewer ( DataArtifact  artifact)
private

Definition at line 397 of file DataArtifactContentViewer.java.

default String org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.getTitle ( Node  node)
inherited

Returns the title of this viewer to display in the tab.

Parameters
nodeThe node to be viewed in the DataContentViewer.
Returns
the title of DataContentViewer.

Implemented in org.sleuthkit.autopsy.contentviewers.Metadata.

Definition at line 61 of file DataContentViewer.java.

References org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.getTitle().

String org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.getTitle ( )

Returns the title of this viewer to display in the tab.

Returns
the title of DataContentViewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 317 of file DataArtifactContentViewer.java.

String org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.getToolTip ( )

Returns a short description of this viewer to use as a tool tip for its tab.

Returns
the tooltip for this TextViewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 322 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.initComponents ( )
private

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.

Definition at line 97 of file DataArtifactContentViewer.java.

int org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.isPreferred ( Node  node)

Checks whether the given viewer is preferred for the Node. This is a bit subjective, but the idea is that Autopsy wants to display the most relevant tab. The more generic the viewer, the lower the return value should be. This will only be called on viewers that support the given node (i.e., isSupported() has already returned true).

The following are some examples of the current levels in use. If the selected node is an artifact, the level may be determined by both the artifact and its associated file.

Level 7 - Based on the artifact, if any, in the selected node and specific to an artifact type or types. Current content viewers that can return level 7 are the Messages tab (only supported for email and SMS) and the Text tab when the selected node is a Keyword Search hit.

Level 6 - Based on the artifact, if any, in the selected node but not restricted to particular types. The current content viewer that can return level 6 is the Results tab. It returns this level for most artifact types, unless the associated file is assumed to be of greater interest (for example, a Hash Set Hit will not be level 6 because the file itself is of greater interest).

Level 5 - Based on the file in the selected node and very specific to the file type. The current content viewer that will return level 5 is the Application tab, which supports media files (such as images) and certain types of databases.

Level 4 - Based on the file in the selected node but fairly general. Currently this is the level returned by the Text tab if Keyword Search has been run (unless the node is a Keyword Search hit or a Credit Card account). This is the default tab for most files.

Level 3 - Based on the artifact, if any, in the selected node where the artifact is thought to be of less interest than the associated file. This level is returned by the Results tab for artifacts like Hash Set Hits.

Level 1 - Very general and should always be available. The Hex, Text, and Metadata tabs are all this level

Level 0 - For cases where the content viewer should never be displayed by default.

Parameters
nodeNode to check for preference
Returns
an int (0-10) higher return means the viewer has higher priority

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 361 of file DataArtifactContentViewer.java.

static boolean org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.isSourceContent ( Content  content)
staticprivate

Metric for determining if content is parent source content.

Parameters
contentThe content.
Returns
True if this content should be used for source content.

Definition at line 517 of file DataArtifactContentViewer.java.

boolean org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.isSupported ( Node  node)

Checks whether the given node is supported by the viewer. This will be used to enable or disable the tab for the viewer.

Parameters
nodeNode to check for support
Returns
True if the node can be displayed / processed, else false

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 342 of file DataArtifactContentViewer.java.

References org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows(), and org.sleuthkit.autopsy.casemodule.Case.getSleuthkitCase().

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.nextPageButtonActionPerformed ( java.awt.event.ActionEvent  evt)
private

Definition at line 249 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.prevPageButtonActionPerformed ( java.awt.event.ActionEvent  evt)
private

Definition at line 256 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.resetComponent ( )

Resets the contents of the viewer / component.

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 337 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.resetComponents ( )
private

Resets the components to an empty view state.

Definition at line 281 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.setArtifactContents ( List< DataArtifact >  artifactList)
private

Populate the cache of artifacts represented as ResultsTableArtifacts.

Parameters
artifactListA list of ResultsTableArtifact representations of artifacts.

Definition at line 495 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.setNode ( Node  selectedNode)

Autopsy will call this when this panel is focused with the file that should be analyzed. When called with null, must clear all references to previous nodes.

Parameters
selectedNodethe node which is used to determine what is displayed in this viewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 295 of file DataArtifactContentViewer.java.

synchronized void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.startNewTask ( SwingWorker< ViewUpdate, Void >  task)
private

Start a new task on its own background thread, canceling the previous task.

Parameters
taskA new SwingWorker object to execute as a background thread.

Definition at line 475 of file DataArtifactContentViewer.java.

void org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.updateView ( ViewUpdate  viewUpdate)
private

Called from queued SwingWorker done() methods on the EDT thread, so doesn't need to be synchronized.

Parameters
viewUpdateA simple container for display update information from a background thread.

Definition at line 439 of file DataArtifactContentViewer.java.

References org.sleuthkit.autopsy.contentviewers.artifactviewers.ArtifactContentViewer.getComponent(), and org.sleuthkit.autopsy.contentviewers.artifactviewers.ArtifactContentViewer.setArtifact().

Member Data Documentation

javax.swing.JPanel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.artifactContentPanel
private

Definition at line 264 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.artifactLabel
private

Definition at line 265 of file DataArtifactContentViewer.java.

List<DataArtifact> org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.artifactTableContents
private

Definition at line 78 of file DataArtifactContentViewer.java.

Node org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.currentNode
private

Definition at line 75 of file DataArtifactContentViewer.java.

int org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.currentPage = 1
private

Definition at line 76 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.currentPageLabel
private

Definition at line 266 of file DataArtifactContentViewer.java.

SwingWorker<ViewUpdate, Void> org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.currentTask
private

Definition at line 79 of file DataArtifactContentViewer.java.

final String org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.ERROR_TEXT = NbBundle.getMessage(DataArtifactContentViewer.class, "DataArtifactContentViewer.errorText")
staticprivate

Definition at line 68 of file DataArtifactContentViewer.java.

javax.swing.Box.Filler org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.filler1
private

Definition at line 267 of file DataArtifactContentViewer.java.

final Collection<ArtifactContentViewer> org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.knowArtifactViewers = new HashSet<>(Lookup.getDefault().lookupAll(ArtifactContentViewer.class))
private

Definition at line 81 of file DataArtifactContentViewer.java.

final int org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.LESS_PREFERRED = 3
staticprivate

Definition at line 71 of file DataArtifactContentViewer.java.

final Object org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.lock = new Object()
private

Definition at line 77 of file DataArtifactContentViewer.java.

final Logger org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.logger = Logger.getLogger(DataArtifactContentViewer.class.getName())
staticprivate

Definition at line 66 of file DataArtifactContentViewer.java.

javax.swing.JPanel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.menuBar
private

Definition at line 268 of file DataArtifactContentViewer.java.

final int org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.MORE_PREFERRED = 6
staticprivate

Definition at line 73 of file DataArtifactContentViewer.java.

javax.swing.JButton org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.nextPageButton
private

Definition at line 269 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.ofLabel
private

Definition at line 270 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.pageLabel
private

Definition at line 271 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.pageLabel2
private

Definition at line 272 of file DataArtifactContentViewer.java.

javax.swing.JButton org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.prevPageButton
private

Definition at line 273 of file DataArtifactContentViewer.java.

javax.swing.JScrollPane org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.scrollPane
private

Definition at line 274 of file DataArtifactContentViewer.java.

final long org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.serialVersionUID = 1L
staticprivate

Definition at line 60 of file DataArtifactContentViewer.java.

javax.swing.JLabel org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.totalPageLabel
private

Definition at line 275 of file DataArtifactContentViewer.java.

final String org.sleuthkit.autopsy.corecomponents.DataArtifactContentViewer.WAIT_TEXT = NbBundle.getMessage(DataArtifactContentViewer.class, "DataArtifactContentViewer.waitText")
staticprivate

Definition at line 67 of file DataArtifactContentViewer.java.


The documentation for this class was generated from the following file:

Copyright © 2012-2021 Basis Technology. Generated on: Thu Jul 8 2021
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.