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

Inherits org.sleuthkit.autopsy.datamodel.AbstractContentNode< BlackboardArtifact >.

Inherited by org.sleuthkit.autopsy.communications.RelationshipNode, and org.sleuthkit.autopsy.datamodel.accounts.Accounts.AccountArtifactNode.

Public Member Functions

 BlackboardArtifactNode (BlackboardArtifact artifact, String iconPath)
 
 BlackboardArtifactNode (BlackboardArtifact artifact)
 
void addNodeProperty (NodeProperty<?> np)
 
Action[] getActions (boolean context)
 
BlackboardArtifact getArtifact ()
 
getContent ()
 
List< Content > getContentChildren ()
 
int getContentChildrenCount ()
 
List< Long > getContentChildrenIds ()
 
String getItemType ()
 
String getName ()
 
String getSourceName ()
 
boolean hasContentChildren ()
 
boolean hasVisibleContentChildren ()
 
boolean isLeafTypeNode ()
 
int read (byte[] buf, long offset, long len) throws TskException
 
void setName (String name)
 

Static Public Member Functions

static boolean contentHasVisibleContentChildren (Content c)
 

Protected Member Functions

Sheet createSheet ()
 
void finalize () throws Throwable
 

Private Member Functions

void addEmailMsgProperty (Map< String, Object > map, BlackboardAttribute attribute)
 
void fillPropertyMap (Map< String, Object > map, BlackboardArtifact artifact)
 
String getRootParentName ()
 
void removeListeners ()
 
void setDisplayName ()
 
void updateSheet ()
 

Static Private Member Functions

static Lookup createLookup (BlackboardArtifact artifact)
 

Private Attributes

final BlackboardArtifact artifact
 
Content associated = null
 
List< NodeProperty<?extends Object > > customProperties
 
final PropertyChangeListener pcl
 
final PropertyChangeListener weakPcl = WeakListeners.propertyChange(pcl, null)
 

Static Private Attributes

static final Set< Case.Events > CASE_EVENTS_OF_INTEREST
 
static Cache< Long, Content > contentCache
 
static final Logger LOGGER = Logger.getLogger(BlackboardArtifactNode.class.getName())
 
static final Integer[] SHOW_FILE_METADATA
 
static final Integer[] SHOW_UNIQUE_PATH
 

Detailed Description

Node wrapping a blackboard artifact object. This is generated from several places in the tree.

Definition at line 66 of file BlackboardArtifactNode.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode ( BlackboardArtifact  artifact,
String  iconPath 
)
org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode ( BlackboardArtifact  artifact)

Construct blackboard artifact node from an artifact and using default icon for artifact type

Parameters
artifactartifact to encapsulate

Definition at line 176 of file BlackboardArtifactNode.java.

References org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.artifact.

Member Function Documentation

void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addEmailMsgProperty ( Map< String, Object >  map,
BlackboardAttribute  attribute 
)
private

Fill map with EmailMsg properties, not all attributes are filled

Parameters
mapmap with preserved ordering, where property names/values are put
attributeattribute to check/fill as property

Definition at line 539 of file BlackboardArtifactNode.java.

References org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.associated, and org.sleuthkit.autopsy.datamodel.ContentUtils.getStringTime().

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.fillPropertyMap().

void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addNodeProperty ( NodeProperty<?>  np)

Add an additional custom node property to that node before it is displayed

Parameters
npNodeProperty to add

Definition at line 479 of file BlackboardArtifactNode.java.

Referenced by org.sleuthkit.autopsy.datamodel.KeywordHits.createBlackboardArtifactNode().

static boolean org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.contentHasVisibleContentChildren ( Content  c)
staticinherited

Return true if the given content object has children. Useful for lazy loading.

Parameters
cThe content object to look for children on
Returns
true if has children

Definition at line 110 of file AbstractContentNode.java.

static Lookup org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createLookup ( BlackboardArtifact  artifact)
staticprivate

Create a Lookup based on what is in the passed in artifact.

Parameters
artifactThe artifact to make a look up for.
Returns
A lookup with the artifact and possibly any associated content in it.

Definition at line 580 of file BlackboardArtifactNode.java.

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode().

Sheet org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet ( )
protected
void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.fillPropertyMap ( Map< String, Object >  map,
BlackboardArtifact  artifact 
)
private

Fill map with Artifact properties

Parameters
mapmap with preserved ordering, where property names/values are put
artifactto extract properties from

Definition at line 495 of file BlackboardArtifactNode.java.

References org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addEmailMsgProperty(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.associated, and org.sleuthkit.autopsy.datamodel.ContentUtils.getStringTime().

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet().

void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.finalize ( ) throws Throwable
protected

The finalizer removes event listeners as the BlackboardArtifactNode is being garbage collected. Yes, we know that finalizers are considered to be "bad" but since the alternative also relies on garbage collection being run and we know that finalize will be called when the object is being GC'd it seems like this is a reasonable solution.

Exceptions
Throwable

Definition at line 189 of file BlackboardArtifactNode.java.

References org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.removeListeners().

Action [] org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getActions ( boolean  context)
BlackboardArtifact org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getArtifact ( )
T org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.getContent ( )
inherited

Return the content data associated with this node

Returns
the content object wrapped by this node

Definition at line 79 of file AbstractContentNode.java.

List<Content> org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.getContentChildren ( )
inherited

Return children of the underlying content.

Returns
list of content children content.

Definition at line 180 of file AbstractContentNode.java.

int org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.getContentChildrenCount ( )
inherited

Get count of the underlying content object children.

Useful for lazy loading.

Returns
content children count

Definition at line 202 of file AbstractContentNode.java.

List<Long> org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.getContentChildrenIds ( )
inherited

Return ids of children of the underlying content. The ids can be treated as keys - useful for lazy loading.

Returns
list of content ids of children content.

Definition at line 160 of file AbstractContentNode.java.

String org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getItemType ( )

Definition at line 602 of file BlackboardArtifactNode.java.

String org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.getName ( )
inherited

Definition at line 89 of file AbstractContentNode.java.

String org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getRootParentName ( )
private
String org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getSourceName ( )

Return the name of the associated source file/content

Returns
source file/content name

Definition at line 289 of file BlackboardArtifactNode.java.

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet().

boolean org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.hasContentChildren ( )
inherited

Return true if the underlying content object has children Useful for lazy loading.

Returns
true if has children

Definition at line 140 of file AbstractContentNode.java.

boolean org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.hasVisibleContentChildren ( )
inherited

Return true if the underlying content object has children Useful for lazy loading.

Returns
true if has children

Definition at line 99 of file AbstractContentNode.java.

boolean org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.isLeafTypeNode ( )

Definition at line 597 of file BlackboardArtifactNode.java.

int org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.read ( byte[]  buf,
long  offset,
long  len 
) throws TskException
inherited

Reads the content of this node (of the underlying content object).

Parameters
bufbuffer to read into
offsetthe starting offset in the content object
lenthe length to read
Returns
the bytes read
Exceptions
TskExceptionexception thrown if the requested part of content could not be read

Definition at line 228 of file AbstractContentNode.java.

void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.removeListeners ( )
private
void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.setDisplayName ( )
private

Set the filter node display name. The value will either be the file name or something along the lines of e.g. "Messages Artifact" for keyword hits on artifacts.

Definition at line 249 of file BlackboardArtifactNode.java.

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

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode(), and org.sleuthkit.autopsy.communications.RelationshipNode.RelationshipNode().

void org.sleuthkit.autopsy.datamodel.AbstractContentNode< T extends Content >.setName ( String  name)
inherited
void org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.updateSheet ( )
private

Member Data Documentation

final BlackboardArtifact org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.artifact
private
Content org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.associated = null
private
final Set<Case.Events> org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.CASE_EVENTS_OF_INTEREST
staticprivate
Initial value:
= EnumSet.of(Case.Events.BLACKBOARD_ARTIFACT_TAG_ADDED,
Case.Events.BLACKBOARD_ARTIFACT_TAG_DELETED,
Case.Events.CONTENT_TAG_ADDED,
Case.Events.CONTENT_TAG_DELETED,
Case.Events.CURRENT_CASE)

Definition at line 69 of file BlackboardArtifactNode.java.

Referenced by org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode(), and org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.removeListeners().

Cache<Long, Content> org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.contentCache
staticprivate
Initial value:
= CacheBuilder.newBuilder()
.expireAfterWrite(1, TimeUnit.MINUTES).
build()

Definition at line 75 of file BlackboardArtifactNode.java.

List<NodeProperty<? extends Object> > org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.customProperties
private

Definition at line 81 of file BlackboardArtifactNode.java.

final Logger org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.LOGGER = Logger.getLogger(BlackboardArtifactNode.class.getName())
staticprivate

Definition at line 68 of file BlackboardArtifactNode.java.

final PropertyChangeListener org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.pcl
private

Definition at line 99 of file BlackboardArtifactNode.java.

final Integer [] org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.SHOW_FILE_METADATA
staticprivate
Initial value:
= new Integer[]{
BlackboardArtifact.ARTIFACT_TYPE.TSK_INTERESTING_FILE_HIT.getTypeID(),}

Definition at line 96 of file BlackboardArtifactNode.java.

final Integer [] org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.SHOW_UNIQUE_PATH
staticprivate
Initial value:
= new Integer[]{
BlackboardArtifact.ARTIFACT_TYPE.TSK_HASHSET_HIT.getTypeID(),
BlackboardArtifact.ARTIFACT_TYPE.TSK_KEYWORD_HIT.getTypeID(),
BlackboardArtifact.ARTIFACT_TYPE.TSK_INTERESTING_FILE_HIT.getTypeID(),
BlackboardArtifact.ARTIFACT_TYPE.TSK_INTERESTING_ARTIFACT_HIT.getTypeID(),}

Definition at line 87 of file BlackboardArtifactNode.java.

final PropertyChangeListener org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.weakPcl = WeakListeners.propertyChange(pcl, null)
private

We pass a weak reference wrapper around the listener to the event publisher. This allows Netbeans to delete the node when the user navigates to another part of the tree (previously, nodes were not being deleted because the event publisher was holding onto a strong reference to the listener. We need to hold onto the weak reference here to support unregistering of the listener in removeListeners() below.

Definition at line 141 of file BlackboardArtifactNode.java.


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

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