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

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

Public Member Functions

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

Private Member Functions

FileTypeViewer getSupportingViewer (AbstractFile file)
 
void initComponents ()
 

Private Attributes

final FileTypeViewer[] KNOWN_VIEWERS
 
FileTypeViewer lastViewer
 
final Map< String, FileTypeViewer > mimeTypeToViewerMap = new HashMap<>()
 

Static Private Attributes

static final int CONFIDENCE_LEVEL = 5
 
static final Logger LOGGER = Logger.getLogger(FileViewer.class.getName())
 
static final long serialVersionUID = 1L
 

Detailed Description

Generic Application content viewer

Definition at line 39 of file FileViewer.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.contentviewers.FileViewer.FileViewer ( )

Creates new form ApplicationContentViewer

Definition at line 62 of file FileViewer.java.

Member Function Documentation

DataContentViewer org.sleuthkit.autopsy.contentviewers.FileViewer.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 166 of file FileViewer.java.

Component org.sleuthkit.autopsy.contentviewers.FileViewer.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 171 of file FileViewer.java.

FileTypeViewer org.sleuthkit.autopsy.contentviewers.FileViewer.getSupportingViewer ( AbstractFile  file)
private

Get the FileTypeViewer for a given file

Parameters
file
Returns
FileTypeViewer, null if no known content viewer supports the file

Definition at line 88 of file FileViewer.java.

String org.sleuthkit.autopsy.contentviewers.FileViewer.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 155 of file FileViewer.java.

String org.sleuthkit.autopsy.contentviewers.FileViewer.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 161 of file FileViewer.java.

void org.sleuthkit.autopsy.contentviewers.FileViewer.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 103 of file FileViewer.java.

int org.sleuthkit.autopsy.contentviewers.FileViewer.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 218 of file FileViewer.java.

References org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector.getMIMEType().

boolean org.sleuthkit.autopsy.contentviewers.FileViewer.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 186 of file FileViewer.java.

References org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector.getMIMEType().

void org.sleuthkit.autopsy.contentviewers.FileViewer.resetComponent ( )

Resets the contents of the viewer / component.

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 176 of file FileViewer.java.

void org.sleuthkit.autopsy.contentviewers.FileViewer.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 112 of file FileViewer.java.

References org.sleuthkit.autopsy.modules.filetypeid.FileTypeDetector.getMIMEType().

Member Data Documentation

final int org.sleuthkit.autopsy.contentviewers.FileViewer.CONFIDENCE_LEVEL = 5
staticprivate

Definition at line 41 of file FileViewer.java.

final FileTypeViewer [] org.sleuthkit.autopsy.contentviewers.FileViewer.KNOWN_VIEWERS
private
Initial value:
= new FileTypeViewer[]{
new SQLiteViewer(),
new PListViewer(),
new MediaFileViewer(),
new HtmlViewer(),
new WindowsRegistryViewer(),
new PDFViewer()
}

Definition at line 48 of file FileViewer.java.

FileTypeViewer org.sleuthkit.autopsy.contentviewers.FileViewer.lastViewer
private

Definition at line 57 of file FileViewer.java.

final Logger org.sleuthkit.autopsy.contentviewers.FileViewer.LOGGER = Logger.getLogger(FileViewer.class.getName())
staticprivate

Definition at line 43 of file FileViewer.java.

final Map<String, FileTypeViewer> org.sleuthkit.autopsy.contentviewers.FileViewer.mimeTypeToViewerMap = new HashMap<>()
private

Definition at line 45 of file FileViewer.java.

final long org.sleuthkit.autopsy.contentviewers.FileViewer.serialVersionUID = 1L
staticprivate

Definition at line 42 of file FileViewer.java.


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

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