Autopsy  4.9.1
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.contentviewers.MessageContentViewer Class Reference

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

Inherited by org.sleuthkit.autopsy.communications.MessageDataContent.


class  AttachmentNode
class  AttachmentsChildren

Public Member Functions

 MessageContentViewer ()
void addNotify ()
DataContentViewer createInstance ()
Component getComponent ()
String getTitle ()
String getToolTip ()
int isPreferred (Node node)
boolean isSupported (Node node)
final void resetComponent ()
void setNode (Node node)

Private Member Functions

void configureAttachments () throws TskCoreException
void configureTextArea (BlackboardAttribute.ATTRIBUTE_TYPE type, int index) throws TskCoreException
void displayEmailMsg ()
void displayMsg ()
void enableCommonFields ()
void initComponents ()
void showImagesToggleButtonActionPerformed (java.awt.event.ActionEvent evt)
void viewInNewWindowButtonActionPerformed (java.awt.event.ActionEvent evt)

Static Private Member Functions

static String cleanseHTML (String htmlInString)
static Optional< BlackboardArtifact > getAssociatedArtifact (final BlackboardArtifact artifact) throws TskCoreException
static String getAttributeValueSafe (BlackboardArtifact artifact, BlackboardAttribute.ATTRIBUTE_TYPE type) throws TskCoreException
static boolean isMessageArtifact (BlackboardArtifact nodeArtifact)
static String wrapInHtmlBody (String htmlText)

Private Attributes

BlackboardArtifact artifact
javax.swing.JPanel attachmentsPanel
javax.swing.JScrollPane attachmentsScrollPane
javax.swing.JLabel ccLabel
javax.swing.JLabel ccText
javax.swing.JLabel datetimeText
javax.swing.JLabel directionText
final DataResultPanel drp
ExplorerManager drpExplorerManager
javax.swing.JPanel envelopePanel
javax.swing.JLabel fromLabel
javax.swing.JLabel fromText
javax.swing.JScrollPane headersScrollPane
javax.swing.JTextArea headersTextArea
javax.swing.JTextPane htmlbodyTextPane
javax.swing.JPanel htmlPane
javax.swing.JScrollPane htmlScrollPane
javax.swing.JTabbedPane msgbodyTabbedPane
javax.swing.JScrollPane rtfbodyScrollPane
javax.swing.JTextPane rtfbodyTextPane
javax.swing.JToggleButton showImagesToggleButton
javax.swing.JLabel subjectLabel
javax.swing.JLabel subjectText
final List< JTextComponent > textAreas
javax.swing.JScrollPane textbodyScrollPane
javax.swing.JTextArea textbodyTextArea
javax.swing.JLabel toLabel
javax.swing.JLabel toText
javax.swing.JButton viewInNewWindowButton

Static Private Attributes

static final int ATTM_TAB_INDEX = 4
static final int HDR_TAB_INDEX = 0
static final int HTML_TAB_INDEX = 2
static final Logger LOGGER = Logger.getLogger(MessageContentViewer.class.getName())
static final int RTF_TAB_INDEX = 3
static final long serialVersionUID = 1L
static final int TEXT_TAB_INDEX = 1
static final BlackboardAttribute.Type TSK_ASSOCIATED_TYPE = new BlackboardAttribute.Type(TSK_ASSOCIATED_ARTIFACT)

Detailed Description

Shows SMS/MMS/EMail messages

Definition at line 82 of file

Constructor & Destructor Documentation

org.sleuthkit.autopsy.contentviewers.MessageContentViewer.MessageContentViewer ( )

Member Function Documentation

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.addNotify ( )
static String org.sleuthkit.autopsy.contentviewers.MessageContentViewer.cleanseHTML ( String  htmlInString)

Cleans out input HTML string

htmlInStringThe HTML string to cleanse
The cleansed HTML String

Definition at line 684 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.configureAttachments ( ) throws TskCoreException
void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.configureTextArea ( BlackboardAttribute.ATTRIBUTE_TYPE  type,
int  index 
) throws TskCoreException

Configure the text area at the given index to show the content of the given type.

typeThe ATTRIBUT_TYPE to show in the indexed tab.
indexThe index of the text area to configure.

Definition at line 571 of file

DataContentViewer org.sleuthkit.autopsy.contentviewers.MessageContentViewer.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.

A new instance of the viewer

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 486 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.displayEmailMsg ( )

Definition at line 615 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.displayMsg ( )

Definition at line 646 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.enableCommonFields ( )

Definition at line 589 of file

static Optional<BlackboardArtifact> org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getAssociatedArtifact ( final BlackboardArtifact  artifact) throws TskCoreException

Get the artifact associated with the given artifact, if there is one.

artifactThe artifact to get the associated artifact from. Must not be null
TskCoreExceptionIf there is a critical error querying the DB.
An optional containing the artifact associated with the given artifact, if there is one.

Definition at line 465 of file

static String org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getAttributeValueSafe ( BlackboardArtifact  artifact,
BlackboardAttribute.ATTRIBUTE_TYPE  type 
) throws TskCoreException

Definition at line 671 of file

Component org.sleuthkit.autopsy.contentviewers.MessageContentViewer.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.

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 491 of file

String org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getTitle ( )

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

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 475 of file

String org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getToolTip ( )

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

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 481 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.initComponents ( )

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 139 of file

static boolean org.sleuthkit.autopsy.contentviewers.MessageContentViewer.isMessageArtifact ( BlackboardArtifact  nodeArtifact)

Is the given artifact one that can be shown in this viewer?

nodeArtifactAn artifact that might be a message. Must not be null.
True if the given artifact can be shown as a message in this viewer.

Definition at line 548 of file

Referenced by org.sleuthkit.autopsy.contentviewers.MessageContentViewer.isSupported().

int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.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 Indexed 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 Indexed 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, Strings, and Metadata tabs are all this level

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

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

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 555 of file

boolean org.sleuthkit.autopsy.contentviewers.MessageContentViewer.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.

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

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 520 of file

References org.sleuthkit.autopsy.contentviewers.MessageContentViewer.isMessageArtifact().

final void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.resetComponent ( )

Resets the contents of the viewer / component.

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 496 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.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.

Implements org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer.

Definition at line 420 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.showImagesToggleButtonActionPerformed ( java.awt.event.ActionEvent  evt)

Definition at line 369 of file

void org.sleuthkit.autopsy.contentviewers.MessageContentViewer.viewInNewWindowButtonActionPerformed ( java.awt.event.ActionEvent  evt)

Definition at line 386 of file

static String org.sleuthkit.autopsy.contentviewers.MessageContentViewer.wrapInHtmlBody ( String  htmlText)

Definition at line 611 of file

Member Data Documentation

BlackboardArtifact org.sleuthkit.autopsy.contentviewers.MessageContentViewer.artifact

Artifact currently being displayed

Definition at line 99 of file

javax.swing.JPanel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.attachmentsPanel

Definition at line 392 of file

javax.swing.JScrollPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.attachmentsScrollPane

Definition at line 393 of file

final int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.ATTM_TAB_INDEX = 4

Definition at line 92 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.ccLabel

Definition at line 394 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.ccText

Definition at line 395 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.datetimeText

Definition at line 396 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.directionText

Definition at line 397 of file

final DataResultPanel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.drp

Definition at line 100 of file

ExplorerManager org.sleuthkit.autopsy.contentviewers.MessageContentViewer.drpExplorerManager

Definition at line 101 of file

javax.swing.JPanel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.envelopePanel

Definition at line 398 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.fromLabel

Definition at line 399 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.fromText

Definition at line 400 of file

final int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.HDR_TAB_INDEX = 0

Definition at line 88 of file

javax.swing.JScrollPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.headersScrollPane

Definition at line 401 of file

javax.swing.JTextArea org.sleuthkit.autopsy.contentviewers.MessageContentViewer.headersTextArea

Definition at line 402 of file

final int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.HTML_TAB_INDEX = 2

Definition at line 90 of file

javax.swing.JTextPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.htmlbodyTextPane

Definition at line 405 of file

javax.swing.JPanel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.htmlPane

Definition at line 403 of file

javax.swing.JScrollPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.htmlScrollPane

Definition at line 404 of file

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

Definition at line 85 of file

javax.swing.JTabbedPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.msgbodyTabbedPane

Definition at line 406 of file

final int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.RTF_TAB_INDEX = 3

Definition at line 91 of file

javax.swing.JScrollPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.rtfbodyScrollPane

Definition at line 407 of file

javax.swing.JTextPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.rtfbodyTextPane

Definition at line 408 of file

final long org.sleuthkit.autopsy.contentviewers.MessageContentViewer.serialVersionUID = 1L

Definition at line 84 of file

javax.swing.JToggleButton org.sleuthkit.autopsy.contentviewers.MessageContentViewer.showImagesToggleButton

Definition at line 409 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.subjectLabel

Definition at line 410 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.subjectText

Definition at line 411 of file

final int org.sleuthkit.autopsy.contentviewers.MessageContentViewer.TEXT_TAB_INDEX = 1

Definition at line 89 of file

final List<JTextComponent> org.sleuthkit.autopsy.contentviewers.MessageContentViewer.textAreas

Definition at line 94 of file

javax.swing.JScrollPane org.sleuthkit.autopsy.contentviewers.MessageContentViewer.textbodyScrollPane

Definition at line 412 of file

javax.swing.JTextArea org.sleuthkit.autopsy.contentviewers.MessageContentViewer.textbodyTextArea

Definition at line 413 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.toLabel

Definition at line 414 of file

javax.swing.JLabel org.sleuthkit.autopsy.contentviewers.MessageContentViewer.toText

Definition at line 415 of file

final BlackboardAttribute.Type org.sleuthkit.autopsy.contentviewers.MessageContentViewer.TSK_ASSOCIATED_TYPE = new BlackboardAttribute.Type(TSK_ASSOCIATED_ARTIFACT)

Definition at line 86 of file

javax.swing.JButton org.sleuthkit.autopsy.contentviewers.MessageContentViewer.viewInNewWindowButton

Definition at line 416 of file

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

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